Windows 8、Visual Studio 2012をインストールしましたが、にv4.5ディレクトリがありません%WINDIR%\Microsoft.NET\Framework
。
何か間違ったことをしましたか、それとも.NET 4.5は他のものと異なりますか?
ツールをインストールしていないことが原因である場合、ダウンロードするさまざまなツールのセットはありますか?私の知る限り、.NET 4.5アプリは問題なく構築できます。
Windows 8、Visual Studio 2012をインストールしましたが、にv4.5ディレクトリがありません%WINDIR%\Microsoft.NET\Framework
。
何か間違ったことをしましたか、それとも.NET 4.5は他のものと異なりますか?
ツールをインストールしていないことが原因である場合、ダウンロードするさまざまなツールのセットはありますか?私の知る限り、.NET 4.5アプリは問題なく構築できます。
回答:
.NET 4.5は4.0のインプレース置換です。アセンブリは4.0ディレクトリにあります。
このトピックについては、Rick StrahlとScott Hanselmanによるブログを参照してください。
特定のバージョンは次の場所にもあります。
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework
編集:この答えは2013年半ばまで正解でしたが、msbuildが大幅に変更されたため、より新しいバージョンを使用している可能性があります。詳細については、Jonny Leedsの回答を参照してください。
C:\Windows\Microsoft.NET\Framework\v4.0.30319
実際のバージョンは .NET 4.5です。少し奇妙ですが、非同期に使用されるものがmscorlib
含まれてAsyncTaskMethodBuilder
います。
.NET 4.5は、.NET 4を効果的に上書きします。
.NET 4.5はside-by-sideバージョンではなく、4.0のアセンブリを置き換えます。.NET 3.0と同様に、3.5および3.5SP1は2.0のアセンブリを置き換えました。そして、いくつかの新しいものを追加しました。CLRバージョンはまだ4.0.30319です。参照アセンブリのみが重要であり、それらはc:\ program files \ referenceアセンブリにあります。
上記の答えは正しいですが、MSBuildが変更され、.netフレームワークに同梱されなくなったことは注目に値しますが、スタンドアロンまたはビジュアルスタジオに付属しています。その結果、バイナリが移動しました... 4.0.303619ディレクトリの下にあるのは実際には古いものです!
私はこれに気づきました- 自動バインディングリダイレクトはVisualStudioから実行しているときにのみ機能し、コマンドラインからmsbuildを実行しているときは機能していませんでした... VS 2013でバインディングリダイレクトが追加されたことが手掛かりでしたネットフレームワーク4.5)。vsコマンドプロンプトを開くと、他の記事で言及されているように、プログラムファイルから取得されていることがわかります。以前のバージョンにリンクしたパスでバッチファイルを使用していたのに対し、
バージョン番号
フレームワークの下:
PS C:\Windows\Microsoft.NET\Framework\v4.0.30319> .\msbuild.exe -version
Microsoft (R) Build Engine version 4.0.30319.33440
[Microsoft .NET Framework, version 4.0.30319.34014]
Copyright (C) Microsoft Corporation. All rights reserved.
4.0.30319.33440PS C:\Windows\Microsoft.NET\Framework\v4.0.30319>
プログラムファイルの下:
PS C:\Program Files (x86)\MSBuild\12.0\Bin> .\MSBuild.exe -version
Microsoft (R) Build Engine version 12.0.21005.1
[Microsoft .NET Framework, version 4.0.30319.34014]
Copyright (C) Microsoft Corporation. All rights reserved.
12.0.21005.1PS C:\Program Files (x86)\MSBuild\12.0\Bin>
(4.0ではなく)4.5がインストールされているかどうかを確認する正式な方法は、レジストリキーにあります。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full
Relesae DWORDは378675より大きくする必要がありますこれはMicrosoftのドキュメントです
4.0.30319.xxxxx以降のマイナーバージョンをチェックする他のすべての回答は正しいようです(msbuild.exe -versionまたはclr.dllのプロパティ)。