Войти

Показать полную графическую версию : Определить издание Windows с условием. (cmd\bat)


PavelVolia86
08-04-2014, 10:26
Необходимо определить издание Windows (XP, 7, 8, 8.1) и выполнить следуещее условие:
Если издание Windows XP то выполнить напр. открытие\закрытие программы.
Если Windows 7 выполнить другое условие.
Если Windows 8 и т.д.

User001
08-04-2014, 10:52
Тема уже была (http://forum.oszone.net/thread-141160-7.html).
Можно например, результат команды ver использовать.

Iska
08-04-2014, 11:52
Необходимо определить издание Windows (XP, 7, 8, 8.1) »
Это не «издание». Это версия.

PavelVolia86
08-04-2014, 13:51
сенк

sunnykey
08-04-2014, 16:42
Издание можно так определить
systeminfo | find "Название ОС"
хотя суть задачи сводиться к определению версии

Foreigner
08-04-2014, 17:38
sunnykey, Лучше все-таки привести кодировку к одному знаменателю:

chcp 65001
systeminfo | findstr "OS.Name:"

или

wmic os get caption

CyberMuesli
13-04-2014, 09:57
::===========================================================================
:osname
::===========================================================================
:: ret: %osname%, %osname.XXX%=0|1, %ostype%, %ostype%

set OSName.Win98=0
set OSName.WinXP=0
set OSName.Server2003=0
set OSName.Server2008=0
set OSName.Win7=0

set osn.Out=%temp%\%random%.tmp
ver >%osn.Out%
find "4.10" %osn.Out%>nul && (set OSName=Win98 & set OSName.Win98=1& set OSType=Client)
find "5.1" %osn.Out%>nul && (set OSName=WinXP & set OSName.WinXP=1& set OSType=Client)
find "5.2" %osn.Out%>nul && (set OSName=Server2003 & set OSName.Server2003=1& set OSType=Server)
find "6.0" %osn.Out%>nul && (set OSName=Server2008 & set OSName.Server2008=1& set OSType=Server)
find "6.1" %osn.Out%>nul && (set OSName=Win7 & set OSName.Win7=1& set OSType=Client)
del %osn.Out%

if not defined OsName (
echo Error: unknow OS
ver
verify other 2>nul
exit
)
goto :eof




© OSzone.net 2001-2012