Mut*_*ran 5 wix wix3 visual-studio-2008
我是 Wix 的新手,正在创建一个多功能 Wix 项目。我们的产品有 4 个模块,每个模块都必须作为一项功能包含在 Windows 安装程序中。但所有功能都共享相同的文件夹结构。
我正在使用命令行构建我的 Wix 项目。将每个模块收集到不同的 wxs 片段中后,light.exe 会给出错误,指出目录表中存在重复的 id。
我的文件树看起来像......
模块A - 核心 |--bin |--等 | |--经理 |--lib |-- a.txt 模块B |--bin |--等 | |--经理 |--lib |-- b.txt 模块C |--bin |--等 | |--经理 |--lib |-- c.txt
我正在使用以下命令...
@echo 正在收集目标文件.... heat.exe dir .\Mod1 -cg Mod1ComponentGroup -nologo -gg -scom -sfrag -sreg -srd -ke -dr 安装 -var var.mod1files -out Mod1Files.wxs heat.exe dir .\Mod2 -cg Mod2ComponentGroup -nologo -gg -scom -sfrag -sreg -srd -ke -dr 安装 -var var.mod2files -out Mod2Files.wxs heat.exe dir .\Mod3 -cg Mod3ComponentGroup -nologo -gg -scom -sfrag -sreg -srd -ke -dr 安装 -var var.mod3files -out Mod3Files.wxs @echo 编译模块.... Candle.exe -nologo myproj.wxs Mod1Files.wxs Mod2Files.wxs Mod3Files.wxs -dmod1files =.\Mod1 -dmod2files=.\Mod2 -dmod3files=.\Mod3 @创建MSI... 设置 msi_name=MYProduct.1.0.12345.Win32.msi light.exe -nologo -ext WixUIExtension -cultures:en-us myproj.wixobj Mod1Files.wixobj Mod2Files.wixobj Mod3Files.wixobj -o %msi_name%
有什么办法可以避免重复 ID 错误吗?
任何帮助将非常感激。
提前致谢。
穆图
如果您使用合并模块,这没问题,因为每个 ID 都会附加一个唯一的模块 ID。( dir1.GUIDA, dir1.GUIDB, dir1.GUIDC ) 如果您使用片段,则必须更改 ID 或将目录结构规范化为单个 wxs,并使用 DirectoryRef 将其拉入包含组件的其他 wxs 中。
我不确定 Heat 能否自动处理所有这些。这实际上只是一个起点。
| 归档时间: |
|
| 查看次数: |
3708 次 |
| 最近记录: |