【问题标题】:How to automatically code-sign MSI built with WiX in VS 2010?如何在 VS 2010 中自动对使用 WiX 构建的 MSI 进行代码签名?
【发布时间】:2023-03-15 08:34:02
【问题描述】:

我正在使用 Visual Studio 2010 和 WiX 构建我的 MSI 项目。我想在编译成功后自动签署发布版本。 (请注意,不是 Debug 构建,以节省编译时间。)

到目前为止,当在解决方案配置中选择“发布”时,我添加了这个“构建后”事件:

翻译成这个命令:

"D:\C++\My Project\MSI Installer\MyProject-Installer\..\..\..\CodeSigner.exe" "D:\C++\My Project\MSI Installer\MyProject-Installer\MyProject-Installer\bin\Release\MyProject-Installer.msi"

嗯,问题是$(TargetPath) 不是那样。生成的 MSI 的实际路径是美国英语版本:

D:\C++\My Project\MSI Installer\MyProject-Installer\MyProject-Installer\bin\Release\en-us\MyProject-Installer.msi

问题 1: 您会看到 $(TargetPath) 填写的内容中不知何故缺少 \en-us 文件夹。

问题 2: VS 2010 尝试为 ReleaseDebug 运行此构建后脚本。我只需要 Release 使用它,就像我在 VS 2008 中所做的那样。

那么知道如何解决这两个问题吗?

【问题讨论】:

标签: windows visual-studio-2010 wix windows-installer code-signing


【解决方案1】:
if $(ConfigurationName) == Debug (
xcopy "$(ProjectDir)bin\Debug\Blobs.msi" "$(SolutionDir)debugDir" /Y /r
) ELSE (
 xcopy "$(ProjectDir)bin\Release\Blobs.msi" "$(SolutionDir)releaseDir" /Y /r
)

【讨论】:

    猜你喜欢
    • 2013-08-22
    • 1970-01-01
    • 2015-10-27
    • 2021-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-31
    • 1970-01-01
    相关资源
    最近更新 更多