Visual Studio 2010外部工具\ obj \ Debug vs \ bin \ debug

时间:2011-12-13 13:26:29

标签: visual-studio-2010 external-tools

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

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\debug复制到bin\debug?我查看了文档here,但我认为没有办法做到这一点。

2 个答案:

答案 0 :(得分:4)

我通过打开对话框窗口并使用参数来解决这个问题。以下是我想要的。有趣的是,Visual Studio 2010非常聪明地在必要时插入斜线/句点以形成理智的路径。可观!

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

顺便提一下,对话窗口太小而且不太大。快速Google搜索从this超级用户问题中调出了this工具。这个特殊问题非常方便......

答案 1 :(得分:0)

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

不幸的是,“外部工具”对话框可以使用的宏有些缺乏。似乎没有什么可以直接引用输出路径。

我能实现这一目标的唯一方法是通过硬编码“输出路径”部分,如下所示:

$(PROJECTDIR)\ BIN \调试\ $(的TargetName)$(TargetExt)

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

这对我有用。我希望有人可以证明我是错的,并找到一种方法来访问这个目录,而无需硬编码部分目录名。