Visual studio &引用;C:\Microsoft.Cpp.Default.props“;找不到

Visual studio &引用;C:\Microsoft.Cpp.Default.props“;找不到,visual-studio,visual-studio-2012,msbuild,Visual Studio,Visual Studio 2012,Msbuild,我在Visual Studio中创建了一个项目,2013年 项目文件具有以下属性: ToolsVersion=“12.0”, 平台工具集=v120 我已安装Visual Studio 2013和Microsoft Build Tools 2015。 使用MSBuild 12.0成功生成此项目。在尝试使用MSBuild 14.0构建它时,我得到一个错误 MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not fo

我在Visual Studio中创建了一个项目,2013年

项目文件具有以下属性:

ToolsVersion=“12.0”, 平台工具集=v120

我已安装Visual Studio 2013和Microsoft Build Tools 2015。 使用MSBuild 12.0成功生成此项目。在尝试使用MSBuild 14.0构建它时,我得到一个错误

MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. 

我花了两个小时来解决这个问题,但我终于完成了

以下解决了我的问题:

  • 在提升的命令提示符(admin)上运行此命令:
    npm安装--全局--生产windows构建工具
    。 如果你没有npm,我建议你安装它,否则就不行了
  • 将安装目录(在我的示例中是C:\Program Files(x86)\MSBuild\14.0)中的所有权更改为用户,而不是管理员。(属性>安全性>高级)

  • 这些步骤解决了我的问题:

  • 运行
    npm安装--全局--生产windows构建工具
  • 运行
    npm安装--保存nan
  • VCTargetsPath
    环境变量设置为
    C:\ProgramFiles(x86)\MSBuild\Microsoft.Cpp\v4.0\V140
  • 我通过以下方式解决了这个问题:

  • VCTargetsPath
    环境变量设置为
    C:\ProgramFiles(x86)\MSBuild\Microsoft.Cpp\v4.0\V140
  • 使用admin构建

  • 我最近重新安装了Visual studio 2017,在尝试安装“npm java”时遇到了这个问题。 我的解决办法是:


  • 将ms版本设置为2017:
    npm配置设置msvs\U版本2017
  • 将VCTargetsPath环境变量设置为
    C:\ProgramFiles(x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets
  • 以系统管理员身份运行命令控制台

  • 我试过npm安装和VCTargetsPath,都不起作用。在将visual studio升级到最新版本后,最终解决了此问题。

    通过安装适用于Windows 10的visual studio Express 2015解决了上述问题。

    对于上述答案不起作用的问题,下面是另一个可能的解决方案

    甚至构建工具或VS 2015的安装对我来说也不起作用。因此,我尝试直接通过PowerShell(作为管理员)安装下面的内容

    命令: choco安装visualcpp构建工具--版本14.0.25420.1


    安装后,为使用VS 2019的用户设置环境变量VCTargetsPath=C:\Program Files(x86)\MSBuild\Microsoft.Cpp\v4.0\v140

    set VCTargetsPath=“C:\Program Files(x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Microsoft\VC\v160”

    编辑(2020年9月): 有时它需要一个尾随的反斜杠(如下所述)

    确保在命令中使用--global,以便能够在任何地方使用此包。
    这为我解决了这个问题

    我无法使用此页面上的所有建议

    我把nodejs降到了10.15,效果很好


    可能不是最好的答案,但它很有效

    我通过在VS 2019中加载解决方案而不是在文件资源管理器中双击解决方案名称来解决问题。

    在Visual Studio 2019之外运行MSBuild(从2012年迁移)时,我遇到了此类问题。 我通过运行此MSBuild解决了这些问题:

    "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\msbuild"
    
    (根据您的VS版本和目标体系结构进行定制)而不是此版本:

    C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild
    

    当我使用Visual Studio 2012时,我正在使用它。

    在检查.vcxproj文件时,我注意到ToolsVersion丢失了。我添加了它,它解决了这个问题

    之前:

    <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    
    
    
    之后:

    <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    
    
    

    当我使用节点版本14.15.3、安装节点版本管理器、安装较低的节点版本(例如8.x.x)、切换到该版本时,发生了这种情况,这应该可以解决问题。

    在尝试使用MSBuild 14.0构建该版本时,您是如何做到的?您可能应该首先调用vcvars.bat(或构建工具2015的等效工具)。同意stijn,请通过vcvars.bat设置命令行构建的路径和环境变量,并检查它是否适合您。有关为命令行生成设置路径和环境变量的更多信息,请参阅:Thank you的可能副本。我只需要(重新)运行
    npm install-g--production windows build tools
    @Nic Szer你能解释一下第二步吗?我无法理解它。@NicSzer在我的例子中,我看到的是所有者:系统我该怎么办?@HarshitAgrawal您需要更改文件夹的所有者,以便您的用户是所有者,而不是所有者SYSTEM@NicSzer谢谢你的回复。我这么做了,但现在又犯了新的错误。这是我第一次尝试在windows上运行react本机项目。我需要一些帮助我们可以在stackoverflow聊天室连接吗?VCTargetsPath在哪里?很好solution@HarshitAgrawal
    VCTargetsPath
    是环境变量的名称。第三步仅适用于我的情况。
    npm config set msvs\u version 2017
    此代码节省了我的时间。谢谢。@Alex您的
    VCTargets
    目录是否已经包含
    Microsoft.Cpp.Default.Props
    ?我有目录,但该文件丢失。@红蜘蛛迪斯科派对是的,2年后,Microsoft.Cpp.Default.Props已经出现在我的VCTargets文件夹中,并且仍然遇到此问题。买一台新的笔记本电脑安装所有东西,然后花上几天时间解决这个问题。在我的案例中,npm配置集msvs_2017版是从Express到Pro的meMoving修复导致问题的原因。将VCTargetsPath环境变量设置为C:\Program Files(x86)\MSBuild\Microsoft.Cpp\v4.0\v140使用Chocolate为我解决了这个问题,我甚至没有设置环境变量,它是现成的这对我有效。请注意,我还需要在路径上添加一个尾随的反斜杠,否则生成无法在子文件夹中查找特定的平台道具。尽管您需要确保指定了正确的VS版本(在我的示例中是Community—“C:\Program Files(x86)\Microsoft Visual Studio\2019\Community”,但这对我也适用
    <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">