Windowsが64bit版なのか32bit版なのかを確認するコマンドよびスクリプト †本資料では、Windowsが64bit版なのか32bit版なのかをいくつかの方法で確認する方法を紹介します。 動作確認Windows OS †
64bit or 32bit ? †Windowsでは、64bitなのか32bitなのかをPROCESSOR_ARCHITECTUREという環境変数やレジストリ内に保持されています。
コマンドプロンプトによる確認方法 †コマンドプロンプトでは、PROCESSOR_ARCHITECTURE環境変数を表示すれば簡単に確認できます。 echo %PROCESSOR_ARCHITECTURE% 実際に実行したときの出力です。 C:\>echo %PROCESSOR_ARCHITECTURE% AMD64 PowerShellによる確認方法 †PowerShellも、PROCESSOR_ARCHITECTURE環境変数を表示すれば簡単に確認できます。 Get-Item Env:PROCESSOR_ARCHITECTURE 実際に実行したときの出力です。 PS C:\> Get-Item Env:PROCESSOR_ARCHITECTURE Name Value ---- ----- PROCESSOR_ARCHITECTURE AMD64 値だけ主としたければ以下のような構文になります。 (Get-Item Env:PROCESSOR_ARCHITECTURE).Value 実際に実行したときの出力です。 PS C:\> (Get-Item Env:PROCESSOR_ARCHITECTURE).Value AMD64 レジストリによる確認方法 †レジストリの場合は、以下の場所にPROCESSOR_ARCHITECTUREの値が格納されています。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment コマンドプロンプトを起動し、以下のコマンドでレジストリ内からPROCESSOR_ARCHITECTUREの値を取得することもできます。 reg query "HKLM\System\CurrentControlSet\Control\Session Manager\Environment" /v PROCESSOR_ARCHITECTURE 実際に実行したときの出力です。 C:\>reg query "HKLM\System\CurrentControlSet\Control\Session Manager\Environment" /v PROCESSOR_ARCHITECTURE HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment PROCESSOR_ARCHITECTURE REG_SZ AMD64 バッチファイルによる判別 †以下に判別するバッチファイルを紹介します。 @echo off if "%PROCESSOR_ARCHITECTURE%" EQU "x86" goto :WIN32 if "%PROCESSOR_ARCHITECTURE%" EQU "AMD64" goto :WIN64 echo unknown & goto :FINISH :WIN32 echo 32bit goto :FINISH :WIN64 echo 64bit goto :FINISH :FINISH 本バッチファイルを実行すると 64bit or 32bit or unknown と表示されます。 VBScriptによる判別 †以下に判別するVBScriptを紹介します。 Dim oWshShell Dim szARC set oWshShell = CreateObject("WScript.Shell") szARC = oWshShell.ExpandEnvironmentStrings("%PROCESSOR_ARCHITECTURE%") MsgBox(szARC) 実際に実行したときの出力です。 以上、Windowsが32bitなのか64bitなのかを確認するいくつかの方法を紹介しました。 |