使用Wix安装32位和64位驱动程序?
问题描述:
我有一个Wix项目,我希望在使用x86发行版配置和64位驱动程序构建时使用x64构建时安装32位驱动程序。使用Wix安装32位和64位驱动程序?
我刚才这样做的方式是使用两个相同的项目,但一个引用difxapp_x86,另一个引用difxapp_x64。我可以改进吗?
另外,如果我引用difxapp_x86,并建立64位版本,那么勿庸置疑,我得到了MSI错误:
"DIFXAPP: ERROR - You need to use the 64-bit version of DIFXAPP.DLL to install drivers on this machine."
是否有可能参考这些有条件地根据所选择的构建配置?
谢谢你,艾伦
答
我设法找到一个解决方案,这里面涉及到手动编辑项目文件。
我改变了以下部分:
<ItemGroup>
<WixLibrary Include="difxapp_x86">
<HintPath>C:\Program Files\Windows Installer XML v3.5\bin\difxapp_x86.wixlib</HintPath>
<Name>difxapp_x86</Name>
</WixLibrary>
</ItemGroup>
以下内容:
<ItemGroup>
<WixLibrary Include="difxapp_$(Platform)">
<HintPath>C:\Program Files\Windows Installer XML v3.5\bin\difxapp_$(Platform).wixlib</HintPath>
<Name>difxapp_x86</Name>
</WixLibrary>
</ItemGroup>
现在的路径,参考将由平台变量的状态来确定。希望它能以相同的要求帮助他人。
Alan
我也遇到同样的错误。而不是使用DIFXAPP,只需调用SetupCopyOemInf并执行一些错误处理的自定义操作应该允许您为32位和64位Windows(我多次成功完成该操作,而不是使用WiX)创建一个安装程序。 – 2014-05-23 02:06:55