當我嘗試編譯我的WiX安裝程序項目時,我收到ICE30。下面的完整的錯誤是:使用兩個合併模塊進行編譯時的ICE30
ICE30: The target file 'DPFPSH~1.DLL|DPFPShrNET.dll' is installed in
'[TARGETDIR]\Windows\DPDrv\' by two different components on an SFN system:
'DPFPShrNET.DA2BFC77_FAFE_41D1_8BB6_134232B2EADC' and
'DPFPShrXTypeLibNET.51D3E534_F1F9_4BC6_BFC5_B27F733081C7'. This breaks component reference
counting.
現在奇特的是,這兩種成分屬於兩個不同的合併模塊,DPOTDotNet.msm和DPOTShrDotNet.msm。當在Orca中查看這兩個組件時,DPFPShrNet(它是DPOTShrDotNet.msm的一部分)有一個與它相關聯的相同名稱的dll(DPFPShrNet.dll,如文件表中所見),而DPFPShrXTypeLibNet也有一個dll與之相關的同名(DPFPShrXTypeNet.dll)。我沒有看到兩個DPFPShrNet.dll正在安裝,正如錯誤所述。
我們正在從InstallShield遷移到WiX,並且InstallShield ism文件引用了這兩個合併模塊,並且它們都使用該方法正確安裝。爲什麼WiX認爲兩個同名的文件正在安裝?只要我從我的項目中刪除DpOTShrDotNet.msm,它就會正確編譯,但是我安裝後缺少GAC中的DPFPShrNet.dll。
是的,我結束了壓制這些警告,它安裝得很好。不幸的是,將它們包裝在MSI中並使用刻錄不是一種選擇。感謝您的輸入。 –