2

我正在尝试将第三方库的签名工具设置为外部工具。论据应该如下:

sign.exe "c:\projectdir\bin\debug\exename.exe" "c:\projectdir\bin\debug\exename.lic"

我的参数配置如下:

$(TargetPath) $(TargetDir)$(TargetName).lic

它有效,但它指向\obj\debug而不是\bin\debug. 有没有办法将生成的文件复制到\bin\debug文件夹或将生成的文件复制\obj\debugbin\debug?我已经查看了此处的文档,但我没有看到任何方法可以做到这一点。

4

2 回答 2

4

我通过打开对话框窗口并使用参数来解决这个问题。以下实现了我想要的。有趣的是,Visual Studio 2010 很聪明地在必要时加入斜线/句点以形成合理的路径。感人的!

$(BinDir)$(TargetName)$(TargetExt) $(BinDir)$(TargetName).lic

顺便说一句,对话框窗口太小且无法调整大小。快速谷歌搜索从这个超级用户问题中找到了这个工具。对于这个特定问题非常方便......

于 2011-12-13T13:34:26.027 回答
0

在我的 Visual Studio 2010 副本中,$(BinDir) 宏映射到 Visual Studio 二进制目录,所以上面的解决方案对我不起作用。

不幸的是,外部工具对话框可用的宏有点缺乏。似乎没有任何东西可以直接引用输出路径。

我能做到这一点的唯一方法是硬编码“输出路径”部分,如下所示:

$(ProjectDir)\bin\Debug\$(TargetName)$(TargetExt)

我讨厌硬编码“bin\Debug”,但是像 $(ConfigurationName) 这样的其他有用的宏在外部工具设置中并不能正常工作。唯一可以工作的宏是“外部工具”对话框的“帮助”窗口中记录的有限集。

所以这对我有用。我希望有人能证明我错了,并找到一种无需硬编码部分目录名称即可访问此目录的方法。

于 2012-01-29T02:31:38.020 回答