2012-06-20 56 views
1

我昨天安装了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”任务支持。验证任务中是否存在参数,它是一个可设置的公共实例属性。

我的旅程还在继续......

+0

我无法重现这一点,有人可以提供一些步骤repro? –

回答

2

我试图打开一个标准的Web项目时遇到的同样的问题。

proj文件引用了v10.0目标的以下导入,但在引用v10.5目标的问题中引入了导入错误。

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets" /> 

当我引用一个硬编码的路径相同的是真实的 - 我仍然有V10.5错误

我的解决办法是简单地备份并删除该版本位于:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\10.5 

我真的不确定其他程序和项目需要这个版本,或者为什么没有遵循导入路径,但它为我打开这个项目似乎回到了正确的版本。

+0

这也适用于我,谢谢! –

相关问题