2013-06-18 54 views
2

我的项目中有一个WiX安装程序项目和一个带有自定义WiX预处理器扩展的DLL项目。问题在于,WiX Visual Studio扩展只能将WiX扩展引用为DLL,而不是Visual Studio项目。 是否有任何良好的解决方法来解决这个限制,以便我可以将自定义扩展项目集成到构建过程中?如何在WiX安装程序项目中引用自定义的WiX扩展项目?

我已经试图通过Post-build事件将扩展项目的输出复制到WiX MSI项目的子目录中,但由于文件锁定问题导致严重的头痛......此外,这是一个非常这样做的黑客方式。我不能相信那些基本的东西在最广泛使用的安装工具包中不被支持!

回答

4

Project Properties»Tool Settings,您可以添加这样的事情:

-ext ..\ExtProject\bin\$(Configuration)\ExtProject.dll 

它仍然是一个有点hackish的关于构建相对路径,虽然。

您仍然应该参考该项目,以确保构建顺序正确。 (VS团队建议通过Project Dependencies,因为它适用于所有构建场景。)

+0

已经尝试过,但不幸的是,构建事件宏如$(Configuration)似乎不支持“Tool Settings”。 – chris

+0

此外,我发现它并没有解决Votive在构建之后没有释放它对扩展DLL的锁定的问题。似乎没有任何解决方法。我认为这是一个主要的和非常烦人的错误,使得与安装项目并行开发自定义扩展几乎是不可能的。已经在SourceForge上提交过。 – chris

+0

好吧,$(配置)宏毕竟看起来工作 - 所以这是最接近我可能会得到一个干净的解决方案 - 谢谢。 – chris

相关问题