我正在尝试使用 Visual Studio 2010 中的 signtool.exe 使用证书自动签署项目。这是我简化的构建后脚本:
if $(ConfigurationName) == Debug ( call "$(VS100COMNTOOLS)VCVarsQueryRegistry.bat" call "$(WindowsSdkDir)bin/signtool.exe" sign /f "$(ProjectDir)my.pfx" /p mypass /t timstamp. dll "$(TargetPath)" )
Debug
用于测试目的。我正在尝试模仿Visual Studio command prompt
- 执行$(VS100COMNTOOLS)VCVarsQueryRegistry.bat
它添加一些额外的变量,然后再使用它。$(WindowsSdkDir)
是我需要的。
虽然该脚本在简单bat
文件中完美运行,但它拒绝在 Visual Studio 中运行。输出是:
调用“C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Tools\VCVarsQueryRegistry.bat”调用“bin/signtool.exe”签名...
请注意,它无法识别在 VCVarsQueryRegistry.bat 中创建的 $(WindowsSdkDir)。
是否可以在 bat 中声明 var 并稍后在构建后使用它,或者我应该使用另一种方法?