我为我的目录/文件做了一个预构建事件。现在它创建 source.wxs 很好,但只有'GUID =“*”',所以现在我得到编译器错误,因为它没有映射到 ProgrammFilesFolder,但每个组件都需要一个唯一的 GUID:
Path" %SystemDrive%\st /MIR
"%WIX%\bin\heat.exe" dir %SystemDrive%\st -dr INSTALLDIRECTORYFOLDER -cg SourceComponentGroup -var var.SourcePath -ag -out "$(SolutionDir).\Setup\source.wxs"
结果:
<Component Id="cmp97CD2699CFD0E466AE00E9EE0BC75B3D" Directory="dirE9158D60656EC6CD461378A2C8EDC064" Guid="*">
<File Id="filD6533D5A559BC86E4704F435FEEE2A5A" KeyPath="yes" Source="$(var.SourcePath)\test1.txt" />
</Component>
我可以更改任何参数以获得所需的效果吗?我找不到有关参数的任何文档。
最佳答案
在不知道确切的编译器错误的情况下,我不能说这是否会解决它,但是为了让热量为您生成 guid,您需要的是 -gg
开关而不是 -ag
。仅供引用,可以在 here 中找到命令行选项。
关于xml - (WiX) - 使用预构建事件自动生成 GUID (heat.exe),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16149300/