如何为使用WIX Installer开发的MSI安装程序提供发布者名称?
在安装我的.msi安装程序时,它显示了未知的发布者,如何为发布者提供名称?是否可以在WIX中执行此操作?如果这样帮助我如何使用WIX安装程序实现这一点.
我无法使用数字签名的 WIX 安装程序引导 exe 继续安装。
以下是突出显示问题的日志摘录。
[39B8:26D4][2017-09-04T20:03:31]i371:更新注册表项:SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall{c6dca553-993e-473c-be4b-8ffa184cd19f},恢复:活动,重新启动否,禁用简历:否
[3904:3A84][2017-09-04T20:03:31]i336:获取容器:WixAttachedContainer,复制自:F:\Digital Signature\MyApp.exe
[3904:3A84][2017-09-04T20:03:31]i000:将字符串变量 'WixBundleLastUsedSource' 设置为值 'F:\Digital Signature\'
[3904:19F4][2017-09-04T20:03:31]e000:错误 0x80070001:无法从容器中提取所有文件,erf:1:2:0
[3904:3A84][2017-09-04T20:03:31]e000:错误 0x80070001:无法等待操作完成。
[3904:3A84][2017-09-04T20:03:31]e000:错误 0x80070001:无法打开容器。
[3904:3A84][2017-09-04T20:03:31]e000:错误 0x80070001:无法打开容器:WixAttachedContainer。
[3904:3A84][2017-09-04T20:03:31]e312:无法从容器中提取有效负载:WixAttachedContainer 到工作路径:C:\Users\Admin\AppData\Local\Temp{18826196-247C-4057-B849 -948AF1A2A7E5}\14B0A9896E9807C47A99BA7BF6B295B54ACE22FD,错误:0x80070001。
[3904:39A4][2017-09-04T20:03:31]e000:错误 0x80070001:缓存失败,中止执行。
[39B8:26D4][2017-09-04T20:03:31]i372:注册表项:SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall{c6dca553-993e-473c-be4b-8ffa184cd19f},恢复:无,重启:无,禁用简历:否
[39B8:26D4][2017-09-04T20:03:31]i330:删除了包依赖提供者:{c6dca553-993e-473c-be4b-8ffa184cd19f}
[39B8:26D4][2017-09-04T20:03:31]i352:删除缓存包:{c6dca553-993e-473c-be4b-8ffa184cd19f},来自路径:C:\ProgramData\Package Cache5{c673c3eca5 -be4b-8ffa184cd19f}\
我可以使用 WIX 非签名引导程序 exe 进行安装。数字签名的引导程序有什么问题?请让我知道是否有人有类似的问题和解决方案。
windows installation windows-installer wix digital-signature
我创建了一个构建后事件,以便在使用以下构建后脚本成功构建后对应用程序进行代码签名。
copy $(TargetPath) $(TargetDir)SignedApp.exe
signtool sign /t http://timestamp.verisign.com/scripts/timestamp.dll /a $(TargetDir)SignedApp.exe
Run Code Online (Sandbox Code Playgroud)
我收到错误 “signtool”未被识别为内部或外部命令。 因此,用于构建事件的路径似乎并未指向 signtool 实用程序。当我运行VS2013 x86 Native Tools Command Prompt 时,我可以运行 signtool,因为它包含一个指向:
C:\Program Files (x86)\Windows Kits\8.1\bin\x86
Run Code Online (Sandbox Code Playgroud)
我可以将此路径硬编码到我的构建事件中
"C:\Program Files (x86)\Windows Kits\8.1\bin\x86\signtool" sign /t http://timestamp.verisign.com/scripts/timestamp.dll /a $(TargetDir)SignedApp.exe
Run Code Online (Sandbox Code Playgroud)
然而,这似乎是不可移植的。如何在没有硬编码的情况下获得为本地命令提示符定义的相同路径以供我的后期构建事件使用?我查看了宏列表,但没有找到任何有用的。