簡単な背景: Vista-x64 マシンの .net 3.5 で VS2008 で C# を開発しています。
私は最近 Vista-x64 に切り替えましたが、いくつか検索した後でも、OS と .net フレームワークの間の相互作用を完全には理解していないように感じます。これに関する訂正/説明をお願いします。
以下は、開発プロセスに関する私の理解です(間違っている場合は修正してください)。
プロジェクトをセットアップするときに、プラットフォーム ターゲット (x64、x86、AnyCpu) を設定できます。私が理解しているように、AnyCpu は現在のプラットフォーム (私の場合は x64) をターゲットにします。x86 をターゲットにして実行することもできます (WoW64 のため)。
x64 を対象とする場合、プログラムは 64 ビットの .net フレームワーク 3.5 を使用し、x86 では同様に 32 ビット フレームワークを使用すると想定しています。これは正しいです?
私を混乱させるのは、x64 をターゲットにしてプラットフォーム情報を出力すると、「WIN32NT」と出力されることです。これにより、「WIN32NT」は私が思っているものではないと思いますが、これについてはあまり知ることができませんでした。これは何ですか?
ComputerInfo computerInfo = new ComputerInfo();
Console.WriteLine("{0,-30}:\t{1}", "Platform", computerInfo.OSPlatform);
ありがとう。