1

重複の可能性:
.net で Windows 64 ビット プラットフォームを検出するには?

私はVBがまったく初めてです。私のマシンには VS2008 Express Edition があり、私の (ターゲット ユーザーの) マシンのビット アーキテクチャを知りたいです。OS 名とメジャー バージョンとマイナー バージョンを取得しましたが、ビット アーキテクチャを取得するにはどうすればよいですか?

4

3 に答える 3

5

私はすでにこれについて以前に尋ねられた質問にリンクしていますが、

最も簡単な解決策は、(可能であれば) Visual Studio 2010 以降を使用することです。オペレーティング システムの使いやすさを知りたい場合は、次のように簡単に使用できます。

Environment.Is64BitOperatingSystem

プロセッサの噛みつきを知りたい場合は、すでに与えられたkor_の回答を使用してください(ただし、これを知る必要がある理由はわかりません)

注:-実行中のプロセスの噛み付きを確認することもできます:

Environment.Is64BitProcess
于 2012-12-17T10:22:46.370 に答える
3
Dim Is64Bit As Boolean

Is64Bit = Not String.IsNullOrEmpty(Environment.GetEnvironmentVariable("PROCESSOR_ARCHITEW6432"))

関連項目: .NET で Windows 64 ビット プラットフォームを検出する方法

于 2012-12-17T07:14:16.280 に答える
2

OS が 32 ビットか 64 ビットかを知りたい場合で、.NET Framework 4.0 以降を使用している場合は、Environment.Is64BitOperatingSystemを使用します。

現在のプロセスが 32 ビットか 64 ビットかを知りたい場合で、.NET Framework 4.0 以降を使用している場合は、Environment.Is64BitProcessを使用します。

これら 2 つを Windows 7 と XP SP3 でテストしましたが、それ以前の OS バージョンではテストしていません。

CPU のビット数を知りたい場合は、次の WMI 呼び出しを使用できます。

Dim mo = New ManagementObject("Win32_Processor.DeviceID='CPU0'")
Dim i As UShort = CUShort(mo("Architecture"))

Select Case i
    Case 0
        Return "32 Bit"
    Case 6  'Itanium
        Return "64-bit"
    Case 9
        Return "64-bit"
    Case Else 'Ooops!
        Exit Select    
End Select
于 2012-12-17T10:42:01.167 に答える