Ниже приведен пример единого
cmd-скрипта, который позволяет выполнять для каждой версии операционной системы
Microsoft Windows соответствующий ей набор консольных команд:
@echo off
setlocal
for /f %%v in ('wmic os get version /value^|find "Version"') do set %%v
set version=%Version:~0,3%
if "%version%"=="6.2" (
rem Код для Windows 8 или Windows 2012
rem Конец кода
goto END
)
if "%version%"=="6.1" (
rem Код для Windows 7 или Windows 2008 R2
rem Конец кода
goto END
)
if "%version%"=="6.0" (
rem Код для Windows Vista или Windows 2008
rem Конец кода
goto END
)
if "%version%"=="5.2" (
rem Код для Windows 2003
rem Конец кода
goto END
)
if "%version%"=="5.1" (
rem Код для Windows XP
rem Конец кода
goto END
)
if "%version%"=="5.0" (
rem Код для Windows 2000
rem Конец кода
goto END
)
:END
Определение
ОС осуществляется благодаря запросу
WMI. В связи с этим для старых систем понадобится дополнительно установить данные службы и проверить работоспособность утилиты "
wmic".
Второй вариант скрипта не нуждается в
WMI, а для определения версии использует утилиту командной строки "
ver":
@echo off
ver|find "5.0.">NUL
if NOT errorlevel == 1 (
rem Код для Windows 2000
rem Конец кода
goto END
)
ver|find "5.1.">NUL
if NOT errorlevel == 1 (
rem Код для Windows XP
rem Конец кода
goto END
)
ver|find "5.2.">NUL
if NOT errorlevel == 1 (
rem Код для Windows 2003
rem Конец кода
goto END
)
ver|find "6.0.">NUL
if NOT errorlevel == 1 (
rem Код для Windows Vista или Windows 2008
rem Конец кода
goto END
)
ver|find "6.1.">NUL
if NOT errorlevel == 1 (
rem Код для Windows 7 или Windows 2008 R2
rem Конец кода
goto END
)
ver|find "6.2.">NUL
if NOT errorlevel == 1 (
rem Код для Windows 8 или Windows 2012
rem Конец кода
goto END
)
:END
на дисках к продуктам Asus есть файл asus_setup.exe (+ini)
ОтветитьУдалитьЭкзешник 500 кб а умеет многое.
Внимательно смотрите и всё поймёте.