Имея проблему, из-за которой я не могу заставить работать следующий скрипт. В принципе, как итог мне нужно убедиться версия приложения больше, чем 2.0.0.8Невозможно сравнить десятичное число с помощью партии
Так вот мой код:
setlocal enabledelayedexpansion
set n2=2.0.0.8
FOR /F "tokens=2* delims=0 " %%A IN ('REG QUERY "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall
\FB58E75BC1D58DF60340894DB00D3FA9BBD513B6" /v displayversion') DO SET n1=%%B
IF %n1% GEQ %n2% (goto success) else (goto error)
:success
start notepad.exe
Goto:eof
:error
start winword.exe
Goto:eof
:eof
exit
Выход работает отлично и n1 выводит версию выше 2.0.0.8 (он выводит 2.0.0.12), используя блокнот и запуск winword только как тестирование.
Независимо от того, какие это всегда ошибки и открывает WINWORD.EXE
значение в тестировании является 2.0.0.12, так почему это до сих пор erroring вне дома?
Надеется, что это имеет смысл
Благодаря
Микоян
'2.0.0.8' не является десятичным ... – npocmaka
Связано: [Как отсортировать строки текстового файла, содержащие номера версий в формате major.m inor.build.revision numerical?] (http://stackoverflow.com/a/34418090) – aschipfl