基于批处理文件中的IE版本号进行操作

CMR*_*CMR 1 batch-file

有人可以帮我理解为什么我得错了输出...

@echo off
setlocal ENABLEEXTENSIONS
set KEY_NAME="HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer"
set VALUE_NAME="Version"
For /F "tokens=3*" %%A IN ('REG QUERY %KEY_NAME% /v %VALUE_NAME%') Do (
 set versionNumber=%%A
)
echo %versionNumber%
if %versionNumber% GEQ 10 echo %versionNumber%
pause
Run Code Online (Sandbox Code Playgroud)

输出:
9.10.9200.1686
9.10.9200.1686
请按任意键继续...

输出应该只打印versionNumber一次.您是否可以将注册表键值视为整数,并在进行GEQ 10比较时执行上述操作?

让我知道...

谢谢您的帮助!

End*_*oro 5

@echo off
setlocal ENABLEEXTENSIONS
set "KEY_NAME=HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer"
set "VALUE_NAME=Version"
For /F "tokens=2*" %%A IN ('REG QUERY "%KEY_NAME%" /v "%VALUE_NAME%"') Do (
 set "versionNumber=%%B"
)
for /f "delims=." %%a in ("%versionNumber%") do set "versionNumber=%%a"
echo %versionNumber%
if %versionNumber% GEQ 10 echo %versionNumber%
pause
Run Code Online (Sandbox Code Playgroud)

  • @ user2008222`cmd`可以_not_处理十进制数,例如.****3.1415692.您只能将字符串和整数与"+/- 2 ^ 31-1"(2147483647)进行比较. (2认同)