2016-07-08 39 views
0

我安裝了WIX 3.9以前的Visual Studio WIX安裝項目,在安裝新的WIX 4.0後,它無法與WIX一起使用。如何更改WIX Heat.exe工具箱版本?

ServerSetup.wixproj(67,5): error MSB6004: The specified task executable location "C:\Program Files (x86)\WiX Toolset v3.10\Bin\Heat.exe" is invalid. 

67號線從ServerSetup.wixproj項目文件是:

<HeatProject Project="%(ProjectReference.FullPath)" ProjectName="%(ProjectReference.Name)" OutputFile="$(IntermediateOutputPath)Harvested XML\_%(ProjectReference.Name).xml" ProjectOutputGroups="%(ProjectReference.RefProjectOutputGroups)" ToolPath="$(Wix)Bin\" SuppressAllWarnings="true" AutogenerateGuids="false" GenerateGuidsNow="true" SuppressFragments="true" SuppressUniqueIds="false" Condition="'%(ProjectReference.FullPath)'!='' And '%(ProjectReference.DoNotHarvest)'!='True' And '%(ProjectReference.ImportedFromVDProj)'!='True'" /> 

我已經unistalled維克斯3.x和我只有維克斯4.0。我應該更改什麼來強制Visual Studio 2013使用WIX 4.0?

回答

0

您是否有指向C:\ Program File(x86)\ Wix Toolset v3.10 \「的WIX環境變量?I 認爲這是如何檢測熱位置,但由於您不再已經安裝了3.10,該文件不存在

更新此環境變量可以解決這個問題對你或者你應該能夠迫使你的項目通過設置一些屬性拿起右熱DIR:。

<WixRootPath Condition=" '$(WixRootPath)' == '' ">$(MSBuildThisFileDirectory)Tools\wix\$(WixTargetVersion)\</WixRootPath> 
<WixToolPath Condition=" '$(WixToolPath)' == '' ">$(WixRootPath)</WixToolPath> 
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(WixRootPath)Wix.targets</WixTargetsPath> 
<WixCATargetsPath Condition=" '$(WixCATargetsPath)' == '' ">$(WixRootPath)sdk\Wix.CA.targets</WixCATargetsPath> 
<WixTasksPath Condition=" '$(WixTasksPath)' == '' ">$(WixToolPath)WixTasks.dll</WixTasksPath> 
<WixSdkPath Condition=" '$(WixSdkPath)' == '' ">$(WixRootPath)sdk\</WixSdkPath> 

但理想情況下,這應該不是必需的機器上,你已經有wix我nstalled。您也可以嘗試卸載wix 4.0並重新安裝,這可能會奇蹟般地解決所有問題。只是修復可能無法正常工作。

+0

我已卸載並重新安裝在Visual Studio中的WIX和WIX項目停止工作。只有消息「應用程序未安裝」。 – qub1n

+0

不幸的是,我還沒有用wix 4.0做過任何工作,我的建議只是對可能解決您的問題的最佳猜測。 –

0

最後我卸載了WIX 4,重新啓動計算機並安裝了WIX 4,現在我可以成功編譯項目了。