Windows のバージョンに応じて異なるコマンドを実行するバッチ ファイルを作成する必要があります。次のバッチを使用しようとしていますが、機能しません
@ECHO off
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
FOR /f "tokens=1,2* delims=." %%a IN ('ver') DO (
SET WVer=%%a
SET WVer=!WVer:~-1!
SET WVer=!WVer!.%%b.%%c
SET WVer=!WVer:]=!
)
ECHO %WVer%
set result=false
if %WVer%==5.1.2600 set result=true
if %WVer%==5.2.3790 set result=true
if "%result%" == "true" (
GOTO XPor2003
)
if "%result%" == "false" (
GOTO nope
)
:XPor2003
echo XPor2003
:nope
echo nope
私のコメントのコピー: Windows XP でのバッチ スクリプトの結果は次のとおりです。
5.2.3790 x64
XPor2003
nope
なぜnope
結果が表示されるのか不思議です。バッチ スクリプトが制御を誤ったラベルに転送する理由を理解しようとしています。