[英]Wix - install directory depending on a condition
在我的wix源代碼中,我必須在注冊表中查找2個條目以獲取安裝目錄:
<Property Id="INSTALLDIR_A">
<RegistrySearch Id='RegA' Type='raw'
Root='HKLM' Key='Software\Path\To\A' Name='InstallLocation' />
<Property Id="INSTALLDIR_B">
<RegistrySearch Id='RegB' Type='raw'
Root='HKLM' Key='Software\Path\To\B' Name='InstallLocation' />
我的安裝目錄必須是INSTALLDIR_A或INSTALLDIR_B。 如果我只需要查看一個條目,我會像那樣實現它:
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="INSTALLDIR" Name="My path">
<!-- further code -->
</Directory>
</Directory>
但我希望INSTALLDIR可以是INSTALLDIR_A或INSTALLDIR_B,具體取決於定義的是哪一個。 怎么做到這一點?
有一個自定義操作SetDirectory( http://wixtoolset.org/documentation/manual/v3/xsd/wix/setdirectory.html )。 您可以嘗試使用第一個值作為默認值,並在設置另一個值時覆蓋它:
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLFOLDER" Name="Software\Path\To\A" />
</Directory>
</Directory>
<SetDirectory Id="INSTALLFOLDER" Value="[INSTALLDIR_B]">INSTALLDIR_B AND NOT INSTALLDIR_A</SetDirectory>
</Fragment>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.