[解決済み] Microsoft.NETFrameworkとMicrosoft.NETFramework64の違いは何ですか?
質問
.NETのモードx86とx64の違いを知りたいのですが。
-
両モードの違いは何ですか?
-
例えば.NET x64と.NET x86でライブラリーをコンパイルできますか?
-
x86ではなくx64を選択した場合、何か違いがあるのでしょうか?
-
.NET x64の利点は何ですか?
-
.NET x64を使用する場合、何か特別なものをインストールしなければならないのでしょうか?
解決方法を教えてください。
複雑な質問ですが、簡単に説明します。
-
どんな.Netアプリケーションでも、一度にx86(32ビット)とx64(64ビット)の両方にコンパイルすることができます。実際、デフォルトでそうなっています。プロジェクトプロパティのビルドタブでターゲットCPUを変更することで変更できます。サポートされているターゲットは、"Any"(オペレーティングシステムのサポートに応じて32ビットまたは64ビットにジャストインタイムコンパイルします)、"x86"は32ビットにコンパイルしてすべてのプラットフォームで動作し、"x64"は64ビットコンパイルして64ビットプラットフォームでのみ機能するものです。
-
はい、上記をご参照ください。また、時々実行される2番目のレベルのコンパイルがあり、それはNGENであることに注意してください。これは特定のCPUタイプ用のネイティブイメージを作成するものです。しかし、これに手を出すともうわかってしまいます。
-
.dllの場合は、CPUを"Any"を選択してください。.EXE(エントリポイント)については、Any、x86、x64のいずれかを選択する必要があります。x86 .Net アプリが Windows ネイティブの .dll ファイルにアクセスする場合(インターポ)、x86 .dll ファイルが必要になるため、考慮すべき点があります。つまり、64ビットアプリケーションは32ビットのAPIコールにアクセスできませんし、その逆も同様です。これは、64ビットオペレーティングシステム上で.Netアプリが失敗する理由となることがよくあります。これを解決するには、正しい.dllを参照するか、プロパティで.Netアプリケーションをx86(32ビット)に設定するだけです。その他の依存関係は、"Any"に設定されていれば、ジャストインタイム コンパイル時に自動的に32ビットになります。
-
64ビットの利点は複雑です。アプリが何をするかによって、利点と欠点があります。最も明白な利点は、アプリケーションが2GBのメモリの壁を破ることができることです。欠点は、#3で説明したように、64ビットの.dllを参照すると、アプリが32ビットオペレーティングシステムで実行されないことです。
-
全ては箱から出してすぐに使える。上記以外のことは心配しないでください。:)
関連
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] C#の正しいバージョン番号を教えてください。
-
[解決済み] 複数の例外を一度にキャッチする?
-
[解決済み] .NETでのdecimal, float, doubleの違い?
-
[解決済み] Try-catchは私のコードをスピードアップさせるか?
-
[解決済み] C#のconstとreadonlyの違いは何ですか?
-
[解決済み] .NET Coreと.NET Standard Class Libraryのプロジェクトタイプの違いは何ですか?
-
[解決済み] C#では、public、private、protected、アクセス修飾子がないことの違いは何ですか?
-
[解決済み] Visual Studioの「Any CPU」ターゲットはどういう意味ですか?
-
[解決済み] .NET Core、.NET Framework、Xamarinの違いとは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] アセンブリから型を読み込めなかったエラー
-
[解決済み] app.configのマッピングがないアセンブリのapp.configの再マッピングを考慮する。
-
[解決済み] ファイルまたはアセンブリ 'System.Data.SQLite' をロードできませんでした。
-
[解決済み] フレームワークとアーキテクチャの違いは何ですか?[クローズド]
-
[解決済み] Microsoft.NETFrameworkとMicrosoft.NETFramework64の違いは何ですか?
-
[解決済み] .Netの配列のLongLengthの目的は何ですか?
-
[解決済み] gacutil.exeはどこですか?
-
[解決済み] .NET Framework 4 マルチターゲティングパックがアンインストールできない
-
[解決済み] 実際のサービスはデータを返すのに、なぜWebServiceはnullを返すのですか?
-
[解決済み] .Any() vs .Count() > 0のどちらのメソッドがより良いパフォーマンスを発揮しますか?