如何在WiX安装程序项目中引用自定义的WiX扩展项目?

3
我有一个WiX安装程序项目和一个带有自定义WiX预处理器扩展的DLL项目。问题在于,WiX Visual Studio扩展只能将WiX扩展引用为DLL文件,而不能作为Visual Studio项目引用。
是否有任何良好的解决方法来解决此限制,以便我可以将自定义扩展项目集成到构建过程中?
我已经尝试通过后期生成事件将扩展项目的输出复制到WiX MSI项目的子目录中,但由于文件锁定问题,这会导致主要麻烦……此外,这是一种非常hackish的做法。我无法相信,在最广泛使用的安装程序工具包之一中,竟然不支持这么基本的功能!
1个回答

4
项目属性 » 工具设置下,你可以添加类似以下的内容:
-ext ..\ExtProject\bin\$(Configuration)\ExtProject.dll

关于构建相对路径仍有些笨拙。

您仍应引用该项目以确保正确的构建顺序。(VS团队建议使用此方法而不是“项目依赖项”,因为它适用于所有构建场景。)


已经尝试过了,但不幸的是,“工具设置”似乎不支持像$(Configuration)这样的构建事件宏。 - chris
1
此外,我发现它并没有解决 Votive 在构建后未释放其对扩展 DLL 的锁定的问题。似乎没有任何解决方法。我认为这是一个重大且非常恼人的错误,使得与安装程序项目并行开发自定义扩展几乎不可能。已在 SourceForge 上提交了此问题。 - chris
好的,$(Configuration) 宏似乎确实起作用了 - 所以这可能是我能得到的最接近干净解决方案了 - 谢谢。 - chris
嗨 @chris,你有没有找到Visual Studio锁定扩展DLL的解决方案?非常烦人:\ - Erik Berkun-Drevnig

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接