Wix 将输入的路径添加到注册表

Wix add entered path to registry

我在将输入的用户路径添加到注册表时遇到问题。

这里是wix代码的重要部分。

属性声明:

<Property Id="PathProp">C:\</Property>

目录声明:

<Directory Id="TARGETDIR" Name="SourceDir">
  <Directory Id="PathProp" Name="Name">
  </Directory>
</Directory>

注册表块:

<RegistryKey Root="HKLM" Key="SOFTWARE\Path\To\Key" Action="createAndRemoveOnUninstall">
  <RegistryValue Name="UserSetPath" Value="[PathProp]" Type="string" />
</RegistryKey>

我有一个从用户那里提取 PathProp 的对话框,我希望输入的值在注册表中。但我看到了默认值 ("C:\")。是否可以准确注册用户输入的内容?

我过去有过这样的经历,在 UI 模式下设置的安装程序属性在执行模式下被破坏了。

原因: 未设置属性 "secure"。 Wix 属性具有属性 secure="true"。使用它。

另外,如果可能,请与我们分享安装程序日志,以便我们查看。

您可以使用此命令获取日志:

 <InstallerPath>/<InstallerName>.msi /l*v <LogPath>/InstallLog.txt