无法使用WiX创建注册表项

时间:2013-04-21 07:36:48

标签: wix

以下代码无法在Windows 7上创建注册表项。

<Component Id='RegistryEntry1' Guid='1BECF977-A7A1-448E-8EC8-843A10E7F6D7' Directory='TARGETDIR'>
  <RegistryKey Root='HKLM'
               Key="SOFTWARE\Microsoft\Microsoft SDKs\Silverlight\v5.0\AssemblyFoldersEx\SimpleMvvmToolkit_2012.SL"
               ForceCreateOnInstall="yes"
               ForceDeleteOnUninstall="yes">            
      <RegistryValue Type="string" 
                     Value="C:\Program Files\SimpleMvvmToolkit_2012\Binaries\Silverlight\v5.0\"
                     KeyPath="yes"/>
  </RegistryKey>
</Component> 

Registry Snap

可能是什么问题?

1 个答案:

答案 0 :(得分:0)

如果未创建注册表项,则更有可能未安装组件。从安装中检查详细日志文件,例如:

msiexec /i path\to\your.msi /l*v install.txt

在该日志文件中,您将看到如下行:

Component: RegistryEntry1; Installed: Absent;   Request: Local;   Action: Local

我希望ActionNone或不是Local。然后查看日志文件以查看未安装Component的原因。

PS:除非您希望在卸载时必须删除的注册表项下创建随机值,否则不需要ForceCreateOnInstallForceCreateOnUninstall