我有一个使用 Visual Studio 使用 Windows 安装程序项目创建的安装程序。该项目需要一些先决条件,例如 Crystal Reports 和 Framework 4.0。
我能够在编译时对我的应用程序的 .msi 安装程序进行数字签名(使用 PostBuildEvent 上的命令),但问题是,为了包含先决条件,编译输出了几个文件和文件夹:
为了将我的应用程序分发到一个包含先决条件的文件中,我使用 7z 工具创建了一个自提取文件。这个最终文件会自动解压缩文件并执行 setup.exe 文件。
问题是,当我这样做时,在编译时生成和签名的 msi 文件上的签名无效,因为最后一个 .exe 文件是未签名的,并且由于未知的发布者,Windows 可能会显示用户帐户控制消息。
我试图签署最后一个文件,但它显示 7z Setup SFX 作为文件描述:
如何在一个签名文件中生成包含先决条件的安装程序?