パソコン鳥のブログ

アクセスカウンタ

zoom RSS バッチファイルの実行環境をチェックする

<<   作成日時 : 2015/02/18 22:27   >>

トラックバック 1 / コメント 0

バッチファイルがどのような環境で実行されているかチェックする方法です。
「管理者として実行されているかのチェック」と「32bitOSか 64bitOSかを判別する」の2つです。


管理者として実行されているかのチェック



サンプル

for /f "tokens=3 delims=\ " %%i in ('whoami /groups^|find "Mandatory"') do set LEVEL=%%i
if NOT "%LEVEL%"=="High" (
echo エラー:管理者として実行して下さい
pause > NUL
exit
)
echo OK-管理者として実行中
pause




32bitOSか 64bitOSかを判別する



環境変数で判別する場合


32bitOS、64bitOS、64bitOS上の32bit環境(WOW64)かを区別します。
サンプル

if "%PROCESSOR_ARCHITECTURE%" == "x86" (
if "%PROCESSOR_ARCHITEW6432%" == "AMD64" (
echo 32bit(WOW64)
) else (
echo 32bit
)
) else (
echo 64bit
)
pause



レジストリで判別する場合


32bitOS か 64bitOS かを区別します。

サンプル

set REGKEY=HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment
set REGVALUE=PROCESSOR_ARCHITECTURE
set PA=
rem reg query "%REGKEY%" /v %REGVALUE%
for /F "usebackq tokens=1,2,*" %%I in (`reg query "%REGKEY%" /v %REGVALUE% 2^>nul`) do if "%%I"=="%REGVALUE%" set PA=%%K
if "%PA%"=="x86" (
echo 32bit
) else if "%PA%"=="AMD64" (
echo 64bit
)
pause





以上、バッチファイルがどのような環境で実行されているかチェックする方法でした。
ここで紹介した方法は以下の記事のバッチファイルでも使用しています。


Windows で bash や sshサーバを利用する パソコン鳥のブログ/ウェブリブログ
Windows用Xサーバ Cygwin/X パソコン鳥のブログ/ウェブリブログ


参考


バッチファイルで、「管理者として実行」されているか?「整合性レベル:低」か?を判定する。(その2): Windows Script Programming
環境変数を使ってプロセスが 64bit か 32bit か判別する : もやもやプログラミング
PROCESSOR_ARCHITECTURE | フリーエンジニア開発雑記







テーマ

関連テーマ 一覧


月別リンク

トラックバック(1件)

タイトル (本文) ブログ名/日時
バッチファイルを管理者権限で動作させる
バッチファイルの内容を、管理者権限で動作させる方法です。 ...続きを見る
パソコン鳥のブログ
2016/05/19 18:55

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
バッチファイルの実行環境をチェックする パソコン鳥のブログ/BIGLOBEウェブリブログ
文字サイズ:       閉じる