WIX-重新安装MSI - 未注册组件

时间:2013-06-18 16:13:53

标签: wix windows-installer

我使用WIX创建了一个MSI。这适用于安装/卸载。

当我尝试重新安装MSI时,它显示了很多错误。从日志中可以看出无法注册组件。

ComponentRegister(ComponentId={A35FD4BC-66CA-4BE0-BCBA-EDEA2DFC7FD3},KeyPath=C:\Program Files\Common Files\{Appname}\Config\0.reg,State=3,,Disk=1,SharedDllRefCount=0,BinaryType=0)
MSI (s) (54:F0) [13:56:53:819]: Note: 1: 1402 2: UNKNOWN\Components\CB4DF53AAC660EB4CBABDEAED2CFF73D 3: 1450

MSI (s) (54:F0) [13:56:53:835]: Note: 1: 2205 2:  3: Error

MSI (s) (54:F0) [13:56:53:835]: Note: 1: 2228 2:  3: Error 4: SELECT `Message` FROM `Error` WHERE `Error` = 2908 

DEBUG: Error 2908:  Could not register component {A35FD4BC-66CA-4BE0-BCBA-EDEA2DFC7FD3}.

MSI (s) (54:F0) [13:57:16:602]: Note: 1: 2205 2:  3: Error 

MSI (s) (54:F0) [13:57:16:617]: Note: 1: 2228 2:  3: Error 4: SELECT `Message` FROM `Error` WHERE `Error` = 1709 

MSI (s) (54:F0) [13:57:16:633]: Product: -- The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2908. The arguments are: {A35FD4BC-66CA-4BE0-BCBA-EDEA2DFC7FD3}, , 

感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

你尝试完全卸载它吗?检查卸载时是否删除了该组件。 永远不会删除标记为永久(componentattributes)的组件。 Neve被删除意味着他们在注册表中进行了“阴影”注册。

答案 1 :(得分:0)

组件注册由两个部分标识,即PATH及其注册表项。看起来当您尝试重新安装时,它与最初安装位置的KeyPath不匹配。 - 在尝试安装之前卸载了吗? - 当你第二次尝试安装时,你是否通过了正确的安装位置,正如我在日志中看到的KeyPath,包含{Appname},似乎在重新安装时没有通过安装路径。