Set*_*eth 120 installer windows-installer wix
什么是Wix'KeyPath '属性?特别是,它如何适用于以下内容:
<Component Id="ProgramMenuDir" Guid="*">
<RemoveFolder Id="ProgramMenuDir" On="uninstall" />
<RegistryValue Root="HKCU" Key="Software\CompName\AppName"
Type="string" Value="" KeyPath="yes" />
</Component>
Run Code Online (Sandbox Code Playgroud)
Wim*_*nen 116
组件的KeyPath是Windows Installer用于确定计算机上是否存在"组件"的单个资源.
这意味着当Windows Installer决定是否安装组件时,它将首先查看密钥路径资源是否已存在.如果是,则不安装组件中的任何资源.
当您"修复"MSI时,密钥路径资源的存在还确定组件是否已损坏或丢失.
当密钥路径资源是版本化文件时,Windows Installer仅在找到具有相同或更高版本的文件时才会认为它存在.
在您的特定示例中,您有一个组件可以在卸载时删除文件夹.仅当给定的注册表项尚不存在时,才会安装此组件.当您需要一个组件的密钥路径来安装不能用作密钥路径的资源(如快捷方式)时,添加注册表项以用作密钥路径是一种常见的技巧.