Главная
Форумы
Новые сообщения
Поиск сообщений
Что нового?
Новые сообщения
Новые ресурсы
Последняя активность
Ресурсы
Последние отзывы
Поиск ресурсов
Помощь форуму
ЧатTG
Вход
Регистрация
Что нового?
Поиск
Поиск
Искать только в заголовках
От:
Новые сообщения
Поиск сообщений
Меню
Вход
Регистрация
Приложение
Установить
Форумы
Форум программистов
Пакетные файлы CMD, BAT
Помощь по функции GetSystemVersion
JavaScript отключён. Чтобы полноценно использовать наш сайт, включите JavaScript в своём браузере.
Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно.
Вам необходимо обновить браузер или попробовать использовать
другой
.
Ответить в теме
Сообщение
[QUOTE="Кирилл, post: 160605, member: 5381"] Решил испробовать функцию getsystem из закрепленной темы,для создания универсального сценария по восстановлению служб. Я раньше использовал примерно такой ход для определения ОС [code=batch]SET Version=Unknown VER | FINDSTR /IL "5.0" > NUL IF %ERRORLEVEL% EQU 0 SET Version="Windows 2000" VER | FINDSTR /IL "5.1." > NUL IF %ERRORLEVEL% EQU 0 SET Version="Windows XP" VER | FINDSTR /IL "5.2." > NUL IF %ERRORLEVEL% EQU 0 SET Version="Windows 2003" VER | FINDSTR /IL "6.0." > NUL IF %ERRORLEVEL% EQU 0 SET Version="Windows Vista" VER | FINDSTR /IL "6.1." > NUL IF %ERRORLEVEL% EQU 0 SET Version="Windows 7" VER | FINDSTR /IL "6.2." > NUL IF %ERRORLEVEL% EQU 0 SET Version="Windows 8" echo. echo. IF %VERSION% == "Windows XP" GOTO XP IF %VERSION% == "Windows 2000" GOTO XP IF %VERSION% == "Windows 2003" GOTO XP IF %VERSION% == "Windows Vista" GOTO Elevate IF %VERSION% == "Windows 7" GOTO Elevate IF %VERSION% == "Windows 8" GOTO Elevate GOTO Unknown[/CODE] Но с вышеупомянутой функцией немного сложнее. Прошу помочь разобрать на примере такого кода [code=batch]@echo off Chcp 866 >nul title Восстановление запуска служб SetLocal EnableExtensions call :GetSystemVersion "OSVer" "Core" "Build" "Family" "EnvironCore" echo Версия ОС: %OSVer% echo Рязрядность ОС: %Core% echo Сборка: %Build% echo Семейство: %Family% echo Разрядность среды запуска Batch: %EnvironCore% echo. echo. echo (Введите с клавиатуры букву Y если версия и разрядность ОС определены верно echo или N что бы произвести выбор вручную и нажмите клавишу ENTER) echo. set ch= set /p ch=Данные определены верно? (Y/N) if /i "!ch!"=="Y" (тут идет вызов основного блока восстановления ) else ( тут вызов вбс скрипта с выбором вручную) ::было бы неплохо добавить защиту от дурака pause Exit /B :GetSystemVersion [OSVersion] [OSCore] [OSBuild] [OSFamily] [EnvironmentCore] Set xOS=x64& If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set xOS=x32 set %~5=x32& if "%xOS%"=="x64" echo "%PROGRAMFILES%" |>nul find "x86" || set %~5=x64 set "%~2=%xOS%" set _key=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion For /f "tokens=2*" %%a In ('Reg.exe query "%_key%" /v "CurrentBuildNumber"^|Find "CurrentBuildNumber"') do set "%~3=%%~b" For /f "tokens=2*" %%a In ('Reg.exe query "%_key%" /v "CurrentVersion"^|Find "CurrentVersion"') do set "_ver=%%~b" For /f "tokens=2*" %%a In ('Reg.exe query "%_key%" /v "ProductName"^|Find "ProductName"') do set "%~1=%%~b" if "%_ver:~0,1%"=="6" (set "%~4=Vista") else (set "%~4=NT") Exit /B ::Блок сценариев для для скрипта восстановления запуска служб :: поблоковое определение нужного твика :: тут надо бы определять блоки исходя из переменных :Exite cls Echo ====== Работа скрипта завершена ====== Echo. Echo. Echo Скрипт подгтовлен Koza Nozdri & Drakogas Echo Сайт: SafeZone.cc Echo E-mail: Fire@safezone.cc Echo. Echo====================================================================== Echo Бесплатное лечение компьютерных вирусов и решение проблем в работе ПК ping -n 15 127.0.0.1 > NUL Exit [/CODE] [/QUOTE]
Вставить цитаты...
Проверка
Ответить
Форумы
Форум программистов
Пакетные файлы CMD, BAT
Помощь по функции GetSystemVersion
Сверху
Снизу