以下代码无法在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>
可能是什么问题?
答案 0 :(得分:0)
如果未创建注册表项,则更有可能未安装组件。从安装中检查详细日志文件,例如:
msiexec /i path\to\your.msi /l*v install.txt
在该日志文件中,您将看到如下行:
Component: RegistryEntry1; Installed: Absent; Request: Local; Action: Local
我希望Action
为None
或不是Local
。然后查看日志文件以查看未安装Component的原因。
PS:除非您希望在卸载时必须删除的注册表项下创建随机值,否则不需要ForceCreateOnInstall
和ForceCreateOnUninstall
。