Wix:更改安装文件夹树
问题描述:
我有一组文件夹要安装在不同用户的不同布局中。对于examle:Wix:更改安装文件夹树
User1:
AppFolder
Dir1
Dir2
Dir3
User2:
AppFolder
Bin
Dir1
Dir2
Lib
Dir3
它怎么可能?
答
问题中没有很多细节,所以我不得不猜测一下。您可以像处理属性一样处理目录。所以,你可以这样做:
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder" Name="PFiles">
<Directory Id="AppFolder" Name="PFiles">
<Directory Id="BinFolder" Name="Bin">
<Directory Id="Dir1" Name="Dir1" />
<Directory Id="Dir2" Name="Dir2" />
</Directory>
<Directory Id="LibFolder" Name="Lib">
<Directory Id="Dir3" Name="Dir3" />
</Directory>
</Directory>
</Directory>
</Directory>
<SetProperty Id="BinFolder" Value="[AppFolder]" After="CostFinalize">HOW_EVER_USER2_DETECTED</SetProperty>
<SetProperty Id="LibFolder" Value="[Dir2]" After="CostFinalize">HOW_EVER_USER2_DETECTED</SetProperty>
这可能不完全正确的,但它会让你接近。如果Property机制无法正常工作,您可能还会考虑使用CustomAction元素,该元素使用Directory和Value属性进行重定向。
另外,像其他人所说的。这很奇怪。我建议从产品中删除要求。 ;)
你这样做的原因是什么?这不是一个好主意。 – 2010-03-22 15:47:23
我有两种不同的环境。 对于每种环境,编译后的二进制文件应该进行不同的排列。 – Yuri 2010-04-07 07:22:13