所以我有一个巨大的文件结构,我希望安装程序,我正在使用wix构建,以复制客户端位置。目前我输入的内容如下:
<Directory Id="xyz" Name = "abc FileSource = "sdfsdf">
<Component Id="asdas" Guid="asdasd">
<File Id = "asdfgrs" Name="name" />
</Component>
</Directory>
随着文件数量的增加,我希望以自动方式完成。使用热量我能够生成:
<ComponentGroup Id="weqw">
<Component Id="2132312" Directory="Some random string (cause of concern>" Guid="asdasd">
<File Id="sdqwdqwd> keyPath="yes" Source = "Correct source path" />
</Component>
<ComponentGroup>
我担心的是,由于热量生成的Component的Directory字段中存在一些随机字符串,我不会复制目录结构。这是真的?有办法解决这个问题吗?
答案 0 :(得分:3)
来自heat /?
输出:
-dr directory reference to root directories (cannot contains spaces
e.g. -dr MyAppDirRef)
如果使用heat来递归收集目录结构,则-dr
开关将设置根目标文件夹的ID。此ID应与您在wxs文件中指定的Directory
元素的ID匹配。
对于收获的子文件夹,加热仍会产生随机ID。给定的ID将在生成的XML文件中多次出现:
在由子文件夹加热生成的Directory
元素中,作为Id
属性。
在与该文件夹相关联的Component
元素中,作为Directory
属性。
该ID仅用于将Component
个元素与Directory
元素相关联。 它不是安装后显示的文件夹名称。它仅用作Windows Installer数据库中的密钥。