动态创建 WIX 文件,无需手动编辑 wix 文件
假设您发布了软件的下一版本,您将必须手动更新您的 WIX 文件以删除过时的文件并添加新文件等。
我的用例非常简单,就像“递归地添加下面的文件”用户目标 C:\Program Files\MyApp 中的 /sample/path”。
有没有一个程序可以实现这种自动化?
Suppose you release the next version of your software, you will have to manually update your WIX files to remove obsolete files and add new files, etc.
My use case is as simple as "recursively add the files under /sample/path in the user target C:\Program Files\MyApp".
Is there a program that does this sort of automation?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
对于 WiX v3(和免费解决方案),请查看 heat.exe。如果您有更高级的收获需求,可以使用 FireGiant 的商业选项 **。
** 免责声明:我是 WiX 工具集的仁慈独裁者和 FireGiant 的首席执行官。我们为开源项目做出贡献,并围绕该项目提供商业解决方案。选择最适合您的。
For WiX v3 (and a free solution), look at heat.exe. If you have more advanced harvesting needs, there is a commercial option from FireGiant**.
** Disclaimer: I am the benevolent dictator of the WiX Toolset and CEO of FireGiant. We contribute to the open source project and provide commercial solutions around the project. Pick what works best for you.
如果 Heat 不能满足您的需求,您可能需要查看 石蜡 作者:John Robbins。
If Heat doesn't meet your needs, you may want to look at Paraffin by John Robbins.
对于 Wix 2,有一个名为 Mallow 的工具可以执行此操作。它是免费软件,我在某处找到了源代码。此时 Heat.exe 中也可能提供此功能,但我不确定。
Wix 社区中的一些人似乎正在尝试一种自动扫描仪功能,您可以将文件放在预定义的发布位置,并不断创建新的 msi 文件 - 阿拉“持续集成”。
您是想对很多包执行此操作,还是只对一个或几个包执行此操作?让我知道范围,我可以向您发送 Mallow 代码,或者挖掘面向“持续集成”的解决方案的链接。
For Wix 2 there was a tool called Mallow that did this. It was freeware and I got the source somewhere. This functionality may also be available in Heat.exe at this point, but I am not sure.
It also seems some guys in the Wix community are experimenting with a sort of automatic scanner feature where you can put files in a pre-defined release location and new msi files are continually created - ala "continuous integration".
Are you looking to do this for a lot of packages, or just for one or a few ones? Let me know the scope and I can send you the Mallow code, or dig up links for the "continuous integration" oriented solutions.
您可以像 Rob 所说的那样使用 heat.exe(我认为他知道,因为他是幕后黑手),或者您可以编写一个简单的收获器脚本,将 wix 脚本评估为 wix 项目的预编译操作。我们使用了 vbscript,因为 heat 不适合我们的问题,导致不同的文件、不同的目录等。
You can use heat.exe as Rob stated already (i think he knows since he is the man behind), or you can write a simple harvester script, that evaluate the wix-script as pre-compile action of the wix-project. We used a vbscript for that since heat did not suit our problems, cause of different files, different directories, etc.
WixEdit具有导入文件夹功能,可以抓取文件夹的全部内容并将其转换为目录/组件/文件节点。
WixEdit has an import folder function that can grab the entire contents of a folder and turn it into Directory/Component/File nodes.