我的客户端在我们的应用程序的.msi安装程序中遇到问题。 WiX被用来创建这个安装程序。该应用程序在几十台其他机器上安装得很好,但在他的机器上显示消息:Windows安装程序包的问题
此安装包不能打开 。请联系应用程序供应商 以验证这是一个有效的Windows 安装程序包。
我的猜测是,它是这两种可能性之一:
- Windows安装程序的客户机上的版本是过时的。
- 他可能已损坏.msi。
什么是最可能的可能性,还是有其他可能性,我不知道?
我想我已经重新创建了用户的问题。如果,从命令shell,我跑MyFile.msi,那么它成功加载,然后我得到这个日志文件:
=== Verbose logging started: 2/12/2009 10:34:38 Build type: SHIP UNICODE 4.00.6001.00 Calling process: C:\Windows\System32\msiexec.exe ===
MSI (c) (F4:04) [10:34:38:795]: Resetting cached policy values
MSI (c) (F4:04) [10:34:38:795]: Machine policy value 'Debug' is 0
MSI (c) (F4:04) [10:34:38:795]: ******* RunEngine:
******* Product: C:\Users\kelley\Downloads\PixelActiveCityScape_v1_6_Demo.msi
******* Action:
******* CommandLine: **********
MSI (c) (F4:04) [10:34:38:802]: Machine policy value 'DisableUserInstalls' is 0
MSI (c) (F4:04) [10:34:38:830]: Note: 1: 1402 2: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer 3: 2
MSI (c) (F4:04) [10:34:39:140]: SOFTWARE RESTRICTION POLICY: Verifying package --> 'C:\Users\kelley\Downloads\PixelActiveCityScape_v1_6_Demo.msi' against software restriction policy
MSI (c) (F4:04) [10:34:39:141]: Note: 1: 2262 2: DigitalSignature 3: -2147287038
MSI (c) (F4:04) [10:34:39:141]: SOFTWARE RESTRICTION POLICY: C:\Users\kelley\Downloads\PixelActiveCityScape_v1_6_Demo.msi is not digitally signed
MSI (c) (F4:04) [10:34:39:142]: SOFTWARE RESTRICTION POLICY: C:\Users\kelley\Downloads\PixelActiveCityScape_v1_6_Demo.msi is permitted to run at the 'unrestricted' authorization level.
MSI (c) (F4:04) [10:34:39:189]: Cloaking enabled.
MSI (c) (F4:04) [10:34:39:190]: Attempting to enable all disabled privileges before calling Install on Server
MSI (c) (F4:04) [10:34:39:197]: End dialog not enabled
MSI (c) (F4:04) [10:34:39:197]: Original package ==> C:\Users\kelley\Downloads\PixelActiveCityScape_v1_6_Demo.msi
MSI (c) (F4:04) [10:34:39:197]: Package we're running from ==> C:\Users\kelley\AppData\Local\Temp\40a3581.msi
.
.
.
但是,如果我跑MSIEXEC/I MyFile.msi /升* v MyLog.TXT,我得到这个:
=== Verbose logging started: 2/12/2009 10:32:19 Build type: SHIP UNICODE 4.00.6001.00 Calling process: C:\Windows\sy
stem32\msiexec.exe ===
MSI (c) (FC:F0) [10:32:19:597]: Resetting cached policy values
MSI (c) (FC:F0) [10:32:19:597]: Machine policy value 'Debug' is 0
MSI (c) (FC:F0) [10:32:19:597]: ******* RunEngine:
******* Product: .\PixelActiveCityScape_v1_6_Demo.msi
******* Action:
******* CommandLine: **********
MSI (c) (FC:F0) [10:32:19:599]: Note: 1: 2203 2: .\PixelActiveCityScape_v1_6_Demo.msi 3: -2147287038
MSI (c) (FC:F0) [10:32:19:600]: MainEngineThread is returning 2
=== Verbose logging stopped: 2/12/2009 10:32:19 ===
,这表明此对话框:
此安装包不能 开了。验证包 是否存在并且您可以访问它,或者 与应用程序供应商联系以确认这是一个有效的Windows 安装程序包。
所以它看起来像一个权限问题,但我不完全确定为什么以及如何修复它。我是否可能需要对.msi文件进行数字签名?
好有关MD5校验想法。 – 2009-02-11 19:05:13
前段时间我遇到这个问题时,我创建了一个GUI实用程序来检查散列。你可以在这里找到它,如果你有兴趣:http://www.binaryfortress.com/hashtools/ – 2009-02-11 19:06:54
这是一个很好的工具,乔恩T.谢谢! – eleven81 2009-02-11 19:19:09