我昨天安裝了VS2010 Web發佈更新,現在每當我嘗試加載一個WiX安裝項目(全部顯示爲在解決方案資源管理器中卸載)時,出現錯誤:安裝VS2010 Web發佈更新後無法加載WiX項目
未找到導入的項目「PROJECTNAME.wpp.targets」。確認聲明中的路徑是正確的,並且該文件存在於磁盤上。 C:\ Program Files \ MSBuild \ Microsoft \ VisualStudio \ v10.5 \ Web \ Microsoft.Web.Publishing.targets
其中PROJECTNAME是我的設置wixproj文件的路徑,沒有.wixproj擴展名。我已經檢查了項目文件,並且沒有任何地方引用wpp.targets文件。我決定嘗試在該位置創建一個空白的目標文件,並因此在其與剛纔添加一個這樣的:
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
</Project>
但得到了完全同樣的錯誤 - 儘管文件中未發現異常在那裏!
我再挖成Microsoft.Web.Publishing.targets文件,並看看任何「.wpp.targets」的文字,這給了我這樣的:
<PropertyGroup Condition="'$(EnableWebPublishProfileFile)'=='true' And
'$(WebPublishProfileFile)' != '' And Exists($(WebPublishProfileFile)) ">
<WebPublishProfileCustomizeTargetFile Condition="'$(WebPublishProfileCustomizeTargetFile)'==''">
$([System.IO.Path]::ChangeExtension($(WebPublishProfileFile), '.wpp.targets'))
</WebPublishProfileCustomizeTargetFile>
...
所以這看起來是建立一個文件名爲PROJECTNAME.wpp.targets,但僅當EnableWebPublishProfileFile屬性設置爲true時。我說這個我wixproj文件的主要的PropertyGroup:
<EnableWebPublishProfileFile>False</EnableWebPublishProfileFile>
再次,雖然,它並沒有區別在所有的錯誤。我現在在這裏想法不多了!
進一步更新
我一直在試圖回購這對一個空白的項目(到目前爲止沒有成功),以及約縮小了誤差降低到這一行(186)在微軟搞亂。 Web.Publishing.targets文件:
<Import Project="$(WebPublishPipelineCustomizeTargetFile)"
Condition="'$(WebPublishPipelineCustomizeTargetFile)' != ''"/>
這是設置在文件的頂部:
<WebPublishPipelineCustomizeTargetFile
Condition="'$(WebPublishPipelineCustomizeTargetFile)'==''">
$(WebPublishPipelineProjectDirectory)\*.wpp.targets
</WebPublishPipelineCustomizeTargetFile>
我不知道這是怎麼回事雖然變成PROJECTNAME.wpp.targets?
我試着在我的項目文件中覆蓋這個,但再一次,它沒有任何區別。
接下來,我加入一個EXISTS()條件,在目標文件中的行,現在一些項目正在和其他人都沒有,而不會顯示失敗(上構建)與錯誤:
的「DisableEscapeMSBuildVariable」參數不受「ImportParametersFile」任務支持。驗證任務中是否存在參數,它是一個可設置的公共實例屬性。
我的旅程還在繼續......
我無法重現這一點,有人可以提供一些步驟repro? –