#author("2019-03-08T16:07:41+09:00","","")
#navi(../)

* Windowsが64bit版なのか32bit版なのかを確認するコマンドよびスクリプト [#h61d8eaf]
本資料では、Windowsが64bit版なのか32bit版なのかをいくつかの方法で確認する方法を紹介します。~
コマンドプロンプト上で確認したり、PowerShell上で確認したり、VBScriptのサンプルスクリプトも紹介します。

#htmlinsertpcsp(win-top.html,win-sp.html)
#contents

* 動作確認Windows OS [#k52e33fc]
- Windows 10 Pro 64bit

* 64bit or 32bit ? [#tddc1280]
Windowsでは、64bitなのか32bitなのかを''PROCESSOR_ARCHITECTURE''という環境変数やレジストリ内に保持されています。~
この環境変数を確認したり取得する方法を以下に記します。~
判別方法は以下の通りです。
- AMD64 : 64bit
- x86 : 32bit

* コマンドプロンプトによる確認方法 [#k7091c4d]
コマンドプロンプトでは、''PROCESSOR_ARCHITECTURE''環境変数を表示すれば簡単に確認できます。~
コマンドプロンプトを起動し、以下の構文を入力(or Copy&Paste)してEnterキーを押してください。
 echo %PROCESSOR_ARCHITECTURE%
実際に実行したときの出力です。
 C:\>echo %PROCESSOR_ARCHITECTURE%
 AMD64

* PowerShellによる確認方法 [#r575049a]
PowerShellも、''PROCESSOR_ARCHITECTURE''環境変数を表示すれば簡単に確認できます。~
PowerShellを起動し、以下の構文を入力(or Copy&Paste)してEnterキーを押してください。
 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

* レジストリによる確認方法 [#tbfb1585]
レジストリの場合は、以下の場所にPROCESSOR_ARCHITECTUREの値が格納されています。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment~
PROCESSOR_ARCHITECTURE
#ref(01.png)
#br

コマンドプロンプトを起動し、以下のコマンドでレジストリ内から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

* バッチファイルによる判別 [#o581a4ec]
以下に判別するバッチファイルを紹介します。
#ref(proc_arch.bat)
 @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による判別 [#da92e062]
以下に判別するVBScriptを紹介します。
#ref(proc_arch.vbs)
 Dim oWshShell
 Dim szARC
 
 set oWshShell = CreateObject("WScript.Shell")
 szARC = oWshShell.ExpandEnvironmentStrings("%PROCESSOR_ARCHITECTURE%")
 MsgBox(szARC)
実際に実行したときの出力です。
#ref(02.png)

以上、Windowsが32bitなのか64bitなのかを確認するいくつかの方法を紹介しました。

#htmlinsertpcsp(win-btm.html,win-sp.html)


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS