我想在Visual Studio 2012 C#项目中添加构建后事件命令行。

我的解决方案中有许多项目,我想添加到“Macros >>”可用的宏列表中。

我怎样才能做到这一点?

例如,我有命令行:

"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" sign /f MYPFXFILEPATH /p MYPASSWORD /t http://timestamp.verisign.com/scripts/timstamp.dll $(TargetDir)$(TargetFileName)

我讨厌将其复制并粘贴到每个项目中。我想将第一部分放在宏中,这样我就可以:
$(SignCommandLinePrefix) $(TargetDir)$(TargetFileName)

最佳答案

尽管您不会在宏>> 列表中看到您的宏,但是您可以手动编辑 .csproj 文件。查找第一个<PropertyGroup>并将其添加在结束</PropertyGroup> 之前:

<SignCommandLinePrefix>"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" sign /f MYPFXFILEPATH /p MYPASSWORD /t http://timestamp.verisign.com/scripts/timstamp.dll</SignCommandLinePrefix>

现在,您可以将$(SignCommandLinePrefix) $(TargetDir)$(TargetFileName)添加到您的构建后事件中,它将按您希望的那样工作。

查看Chuck England对这个问题的回答:
http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/e774f871-8fc2-4875-b791-1df3dd0bb2dc/

10-08 04:09