「C:\ Microsoft.Cpp.Default.props」が見つかりませんでした


83

2013年にVisualStudioで作成されたプロジェクトがあります。

プロジェクトファイルには、次のプロパティがあります。

ToolsVersion = "12.0"、PlatformToolset = v120。

Visual Studio2013とMicrosoftBuild Tools2015をインストールしています。このプロジェクトは、MSBuild12.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. 

私が理解しているように、問題は変数VCTargetsPathが評価されないことです。ビルドの前に変数VCTargetsPathを指定すると(値はC:\ Program Files(x86)\ MSBuild \ Microsoft.Cpp \ v4.0 \ V120)、問題は解決します。

ただし、パスが異なる場合、このアプローチはあまり便利ではありません。どういうわけか、より最適な方法で問題を解決することは可能ですか?

レジストリキーとその値:

HKLM\Software\WOW6432Node\Microsoft\MSBuild\ToolsVersions\12.0\VCTargetsPath $([MSBuild]::ValueOrDefault('$(VCTargetsPath)','$(MSBuildExtensionsPath32)\Microsoft.Cpp\v4.0\V120\'))

MSBuild 14.0でビルドしようとすると、どの程度正確に実行しますか?おそらく...最初(2015ビルドツールまたは同等の)vcvars.batを呼び出す必要があります
stijn

stijnに同意し、vcvars.batを介してコマンドラインビルドのパス変数と環境変数を設定し、それが機能するかどうかを確認してください。コマンドラインビルドのパス変数と環境変数の設定の詳細については、以下を参照してください
。msdn.microsoft.com/ en

回答:


60

この問題を解決するのに2時間かかりましたが、ようやく終了しました。

以下は私の問題を解決しました:

  1. 管理者特権のコマンドプロンプト(admin)でこれを実行します npm install --global --production windows-build-tools。npmがない場合は、インストールすることをお勧めします。インストールしないと、機能しません。
  2. インストールディレクトリ(私の場合C:\Program Files (x86)\MSBuild\14.0)の所有権を、adminではなくユーザーに変更します。([プロパティ]> [セキュリティ]> [詳細])。

9
ありがとうございました。を(再)実行する必要がありましたnpm install -g --production windows-build-tools
ダンアトキンソン

@Nic Szerは私に2番目のステップを説明できますか?理解できません。
HarshitMadhav

@NicSzer私の場合、所有者が表示されています:SYSTEMどうすればよいですか?
HarshitMadhav

@HarshitAgrawalユーザーがシステムではなく所有者になるように、フォルダーの所有者を変更する必要があります
NicSzerman19年

@NicSzer返信ありがとうございます。私はそれをしましたが、今新しいエラーが発生しています。Windowsでreactnativeプロジェクトを実行しようとするのはこれが初めてです。ヘルプが必要ですstackoverflowのチャットルームに接続できますか?
HarshitMadhav

32

最近VisualStudio 2017を再インストールしましたが、「npmjava」をインストールしようとしたときにこの問題が発生しました。私の修正は次のとおりです。

  1. msバージョンを2017に設定します。 npm config set msvs_version 2017
  2. VCTargetsPath環境変数をに設定します C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets
  3. システム管理者としてコマンドコンソールを実行する

3
npm config set msvs_version 2017このコードは私の時間を節約しました。ありがとう。
canmustu

@AlexあなたのVCTargetsディレクトリにはすでに含まれていましたMicrosoft.Cpp.Default.Propsか?ディレクトリはありますが、そのファイルがありません。
starscream_disco_party

@starscream_disco_partyはい、Microsoft.Cpp.Default.Propsはすでに私のVCTargetsフォルダーにあります
Alex

23

これらの手順で私の問題は解決しました。

  1. 実行 npm install --global --production windows-build-tools
  2. 実行 npm install --save nan
  3. VCTargetsPath環境変数をに設定しますC:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140

2
VCTargetsPathはどこにありますか?
HarshitMadhav

完璧な解決策
Hammad ulHasan19年

1
@HarshitAgrawalVCTargetsPathは、環境変数の名前です。
エムレTapcı

3番目のステップは私の場合にのみ必要でした。
セルゲイ

10

上記の答えが機能しない場合は、別の解決策を検討してください。

ビルドツールやVS2015のインストールでさえ私にはうまくいきませんでした。そこで、PowerShellを介して(管理者として)直接以下をインストールしてみました

https://chocolatey.org/packages/visualcpp-build-tools/14.0.25420.1 コマンド:choco install visualcpp-build-tools --version 14.0.25420.1

これをインストールしたら、環境変数VCTargetsPath = C:\ Program Files(x86)\ MSBuild \ Microsoft.Cpp \ v4.0 \ v140を設定します。


Chocolateyを使用して解決しました。環境変数も設定しませんでした。箱から出してすぐに機能しました
MeirGabay20年

9

VS 2019を使用している場合:

VCTargetsPath = "C:\ Program Files(x86)\ Microsoft Visual Studio \ 2019 \ Professional \ MSBuild \ Microsoft \ VC \ v160"を設定します

編集(2020年9月):場合によっては、末尾に円記号が必要になります(下記のbmillerのように)


1
これは私のために働いた。パスの末尾に円記号も必要であることに注意してください。そうしないと、ビルドでサブフォルダー内の特定のプラットフォーム小道具を探すことができませんでした。
bmiller

1
適切なVSバージョンを指定していることを確認する必要がありますが(私の場合はコミュニティ-"C:\ Program Files(x86)\ Microsoft Visual Studio \ 2019 \ Community \ MSBuild \ Microsoft \ VC \ v160 「
g0rski

5

私はこれを次のように解決しました:

  1. VCTargetsPath環境変数をに設定しますC:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140
  2. adminを使用してビルドする

1

このページのすべての提案で機能させることができませんでした

nodejsを10.15にダウングレードしましたが、正常に機能しました

おそらく最良の答えではありませんが、うまくいきます


0

npm installとVCTargetsPathを試しましたが、すべて機能しません。Visual Studioを最新バージョンにアップグレードした後、最終的に解決しました。


0

Visual Studio Express 2015 for Windows10をインストールすることで解決しました。


私の場合、ExpressからProに移行すると問題が発生しました。Cに設定VCTargetsPath環境変数:\プログラムファイル(x86の)\ MSBuildの\ Microsoft.Cpp \ V4.0 \ V140
セルゲイ

0

ファイルエクスプローラーでソリューション名をダブルクリックする代わりに、VS 2019でソリューションをロードすることで、問題を解決しました。


0

Visual Studio 2019(2012から移行)の外部でMSBuildを実行すると、このような問題が発生しました。私はこの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 Studio2012を使用していたときに使用していました。


-1

このパッケージをどこでも使用できるようにするには、コマンドで--globalを使用してください。これは私にとって問題を解決します

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.