WIX工具集:存储(可配置)在注册表中安装目录

时间:2014-10-17 09:38:21

标签: wix installer windows-installer

我正在使用允许自定义安装目录的功能树对话框,然后我尝试将此安装目录存储在注册表中

根据Wix的文档,我将ui变量默认为我想要的目录

<Property Id="WIXUI_INSTALLDIR" Value="VERSION" />
<SetProperty Id="VERSION" Value="[ProgramFilesFolder]Thermo\SampleManager\[PROP_VERSION]" After="CostInitialize" />

然后尝试将注册表设置为

            <RegistryKey Root="HKCR" Key="x\x\x">
                <RegistryValue Type="string" Value="[VERSION]aaasx\aasx" />
            </RegistryKey>

显然,[VERSION]不会随UI选择而改变,我应该使用哪个变量来更改配置的目录?感觉好像我已经尝试了所有建议[安装]等。

目录配置为

<Directory Id="ProgramFilesFolder" Name="PFiles">
            <Directory Id="COMPANY" Name="Company">
                <Directory Id="PRODUCT" Name="Product">
                    <Directory Id="VERSION" Name="Version">

进一步调查发现使用文件引用([#file])有效,这解决了我90%的问题,但是指向/存储目录路径不起作用

1 个答案:

答案 0 :(得分:1)

您只能使用 RegistryValue

<RegistryValue Root='HKCR' Key='SOFTWARE\MyProcudt' Name='MyPath' Value='[INSTALLDIR]' Type='string' />

它将在HKCR / software / myproduct name&#34; mypath&#34;中创建注册表。值[installdir](设置ealrier)。