我正在開發使用x86和x32版本以及我的Wix安裝程序的Excel插件如果用戶嘗試在x64版本的Excel 2013上安裝x86版本的插件,並且反之亦然,我想提出錯誤。我這樣做是這樣的:wix - 檢查Excel 2013版本
從86插件.wxs文件片段:
<!-- Check if Excel x64 is installed -->
<Property Id="EXCEL2013">
<ComponentSearch Id="DetectExcel2013" Guid="{E3BD1151-B9CA-4D45-A77E-51A6E0ED322A}" Type="file"/>
</Property>
<Condition Message="Please install Excel 2013x64.">
<![CDATA[EXCEL2013]]>
</Condition>
<!-- Check if Excel x86 is installed -->
<Property Id="EXCEL2013">
<ComponentSearch Id="DetectExcel2013" Guid="{C8A65ABE-3270-4FD7-B854-50C8082C8F39}" Type="file"/>
</Property>
<Condition Message="Please install Excel 2013x86.">
<![CDATA[Installed OR EXCEL2013]]>
</Condition>
從64位插件.wxs文件snnipet它似乎可靠。 但是有問題。這個檢查就像在x86 Excel機器上的魅力一樣 - 在那裏找到C8A65ABE ... guid。但是對於x64 Excel機器上的E3BD1151 ... guid,情況並非如此。似乎兩個版本的Excel(x86和x64)都具有相同的C8A65ABE ... guid。如何可靠區分Excel 2013版本,因爲兩個版本都有相同的C8A65ABE ... guid?
在你的x64plugin.wxs文件中,你是否有屬性「Platform =」x64「set?否則wix將查找x86註冊表位置的GUID。 – Isaiah4110