Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти

 
Расширенный поиск

800885 Сообщений в 11256 Тем- от 88239 Пользователей - Последний пользователь: dron78

05 Декабрь 2020, 18:33:15
ADSL.Kirov.RuСообществаПрограммирование (Модератор: Ivanidze)Тема: Надо научиться писать bat-файлы
Страниц: 1 2 [3] 4  Все   Вниз
Печать
Автор Тема: Надо научиться писать bat-файлы  (Прочитано 11532 раз)
Blackman
Администратор
*****
Пол: Мужской
Сообщений: 1512



WWW
« Ответ #30 : 11 Май 2016, 18:53:39 »

Не всё так просто Улыбка он добавляет, да, но тебе надо написать такую команду, которая добавит в реестр команду, которая будет изменять нужный кусок реестра Улыбка
А изменение записи делается через то же reg add но с ключом /f (инструкция)
Итак, два этапа.
Первый - так будет выглядеть команда на перезапись параметра:
Код:
REG ADD HKLM\SOFTWARE\тра-ля-ля\ветка /v "параметр" /t REG_DWORD /d число /f
Второй этап: нам надо добавить эту команду в ветку реестра, в которой хранится однократный автозапуск:
Код:
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v "*ResetCounter" /t REG_SZ /d "REG ADD HKLM\SOFTWARE\тра-ля-ля\ветка /v \"параметр\" /t REG_DWORD /d число /f"
Прошу обратить внимание - кавычки у команды экранированы.
Записан

что-нибудь жизнеутверждающее

Meys
Старожил
****
Пол: Мужской
Сообщений: 424



WWW
« Ответ #31 : 11 Май 2016, 19:14:54 »

Код:
REG ADD HKLM\SOFTWARE\ESET\ESET Security\CurrentVersion\Info /v "*PackageFeatures" /t REG_DWORD /d 0000003d /f
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v "*ResetCounter" /t REG_SZ /d "REG ADD HKLM\SOFTWARE\ESET\ESET Security\CurrentVersion\Info /v \"*PackageFeatures\" /t REG_DWORD /d 0000003d /f"
вот так правильно будет?  нет наверно не судьба мне разобраться)))
Записан

Blackman
Администратор
*****
Пол: Мужской
Сообщений: 1512



WWW
« Ответ #32 : 11 Май 2016, 20:55:29 »

Вроде похоже. единственное что хз слопает ли такую форму представления числа как 0000003d или надо в формате 0x0000003d писать. лучше поэкспериментировать на каких-нибудь неиспользуемых параметрах Улыбка

А, и еще звездочка там не нужна скорей всего. Если в названии параметра этой звездочки нет.
« Последнее редактирование: 11 Май 2016, 21:10:40 от Blackman » Записан

что-нибудь жизнеутверждающее

Meys
Старожил
****
Пол: Мужской
Сообщений: 424



WWW
« Ответ #33 : 11 Май 2016, 21:44:58 »

Вот так попробовать или еще что-то подправить? и в автозагрузку положить батник перезагрузки?

Код:
Echo Off

REM Check Windows Version
ver | findstr /i "5\.0\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_nt5x
ver | findstr /i "5\.1\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_nt5x
ver | findstr /i "5\.2\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_nt5x
ver | findstr /i "6\.0\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_nt6x
ver | findstr /i "6\.1\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_nt6x
ver | findstr /i "6\.2\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_nt6x
ver | findstr /i "6\.3\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_nt6x
ver | findstr /i "10\.0\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_nt10x
goto warn_and_exit

:ver_nt5x
:Run Windows 2000/XP specific commands here
bootcfg /raw /a /safeboot:network /id 1
REG ADD HKLM\SOFTWARE\ESET\ESET Security\CurrentVersion\Info /v "PackageFeatures" /t REG_DWORD /d 0x0000003d /f
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v "*ResetCounter" /t REG_SZ /d "REG ADD HKLM\SOFTWARE\ESET\ESET Security\CurrentVersion\Info /v \"PackageFeatures\" /t REG_DWORD /d 0x0000003d /f"
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v "*UndoSB" /t REG_SZ /d "bootcfg /raw /fastdetect /id 1"
SHUTDOWN -r -f -t 03

:ver_nt6x
:Run Windows Vista/7/8/8.1 specific commands here
bcdedit /set {current} safeboot network
REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionRunOnce /v "*UndoSB" /t REG_SZ /d "bcdedit /deletevalue {current} safeboot"
SHUTDOWN -r -f -t 03
goto end

:ver_nt10x
:Run Windows 10 specific commands here
bcdedit /set {current} safeboot network
REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionRunOnce /v "*UndoSB" /t REG_SZ /d "bcdedit /deletevalue {current} safeboot"
SHUTDOWN -r -f -t 03
goto end

Echo On

:warn_and_exit
echo Machine OS cannot be determined.

:end

Записан

Blackman
Администратор
*****
Пол: Мужской
Сообщений: 1512



WWW
« Ответ #34 : 11 Май 2016, 22:48:44 »

Эммм... Ну если ты заранее знаешь, на какой системе это будет запускаться, то собственно большую часть того кода можно выкинуть.
Я так понимаю в нашем случае под XP? Тогда что-то типа:
Код:
:: Настроить следующую перезагрузку в безопасном режиме
bootcfg /raw /a /safeboot:network /id 1
:: После загрузки выполнить следующие команды автозапуска:
:: Вернуть обратно нормальный режим загрузки (не безопасный)
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v "*UndoSB" /t REG_SZ /d "bootcfg /raw /fastdetect /id 1"
:: Внести требуемые изменения в реестр
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v "*ResetCounter" /t REG_SZ /d "REG ADD HKLM\SOFTWARE\ESET\ESET Security\CurrentVersion\Info /v \"PackageFeatures\" /t REG_DWORD /d 0000003d /f"
:: Запланировать перезагрузку - с этим этапом могут быть проблемы если он выполнится не последним
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v "*XXRestart" /t REG_SZ /d "SHUTDOWN -r -f -t 03"
:: Выполнить перезагрузку
SHUTDOWN -r -f -t 03
Можно протестировать - если работать будет правильно, то можно не городить огород с bat-файлами в папке автозагрузки. Значит выполняются команды по мере внесения в реестр или по алфавиту.
Записан

что-нибудь жизнеутверждающее

Meys
Старожил
****
Пол: Мужской
Сообщений: 424



WWW
« Ответ #35 : 11 Май 2016, 23:13:03 »

Blackman, спасибо большое! Завтра попробую.
Записан

Meys
Старожил
****
Пол: Мужской
Сообщений: 424



WWW
« Ответ #36 : 13 Май 2016, 19:09:33 »

Попробовал - результат система перезагружается в безопасный режим и снова загружается в обычный, параметры реестра не меняются.
значит перезагрузка выполняется раньше чем все остальные команды.
А на счет бат файла в автозагрузке - где то читал, что в безопасном режиме не запускаются программы из папки автозапуска.
---------------
Да, точно проверил из автозагрузки не запускается файл в безопасном
« Последнее редактирование: 13 Май 2016, 19:30:51 от Meys » Записан

Blackman
Администратор
*****
Пол: Мужской
Сообщений: 1512



WWW
« Ответ #37 : 13 Май 2016, 21:18:34 »

Тогда как вариант запускать из автозапуска в реестре батник, который будет все эти вещи выполнять: и нужные модификации реестра и перезагрузку.
Но только вот я не уверен что ветка RunOnce умеет запускать не PE EXE-файлы...
Экспериментируй! Улыбка

P.S. Сейчас подумал - а никто не мешает запускать батник не напрямую, а через передачу его командному интерпретатору. То есть условно говоря cmd.exe путь\файл.bat
Записан

что-нибудь жизнеутверждающее

Meys
Старожил
****
Пол: Мужской
Сообщений: 424



WWW
« Ответ #38 : 13 Май 2016, 21:38:10 »

P.S. Сейчас подумал - а никто не мешает запускать батник не напрямую, а через передачу его командному интерпретатору. То есть условно говоря cmd.exe путь\файл.bat
Не понял, ты говоришь про батник перезагрузки который хотели в автозагрузку поместить  или который все команды выполняет? Чем это может помочь?
---------
Почему-то даже одна команда
REG ADD HKLM\SOFTWARE\ESET\ESET Security\CurrentVersion\Info /v \"PackageFeatures\" /t REG_DWORD /d 0000003d /f
при запуске её в безопасном не меняет параметр.
0x0000003d тоже пробовал
« Последнее редактирование: 13 Май 2016, 22:48:04 от Meys » Записан

vvgNovanet
Ветеран
*****
Пол: Мужской
Сообщений: 526



« Ответ #39 : 13 Май 2016, 22:54:57 »

Кавычки забыл ( пробелы есть без кавычек не пойдёт )
"HKLM\Software\ESET\ESET Security\CurrentVersion\Info"

так должно быть
REG ADD "HKLM\SOFTWARE\ESET\ESET Security\CurrentVersion\Info" /v \"PackageFeatures\" /t REG_DWORD /d 0000003d /f


тоже когда то делал активатор )))

У меня так работало 100%

Это только пример
echo Результат: Активация......
echo Активация панели смены сервера обновлений...
REG ADD "HKLM\Software\ESET\ESET Security\CurrentVersion\Info" /v PackageFeatures /t REG_dword /d 00000001 /f
echo Активация программы.....
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\ESET\ESET Security\CurrentVersion\Plugins\01000400\Settings" /v RegistrationType /t REG_dword /d 00000000 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\ESET\ESET Security\CurrentVersion\Plugins\01000400\Settings" /v Registration /t REG_dword /d 00000001 /f
echo Отключение контроля за системными обновлениями.....
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\ESET\ESET Security\CurrentVersion\Plugins\01000600\Profiles\@My profile" /v WUWarningLevel /t REG_dword /d 00000000 /f
echo Отключение игрового режима.......
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\ESET\ESET Security\CurrentVersion\Plugins\01000600\Profiles\@My profile" /v GamerModeFullScreenEnabled /t REG_dword /d 00000000 /f
echo Активация произведена перезагрузите компьютер.....
:Done
del temp.txt
echo.
pause
exit
« Последнее редактирование: 13 Май 2016, 22:58:20 от vvgNovanet » Записан
Meys
Старожил
****
Пол: Мужской
Сообщений: 424



WWW
« Ответ #40 : 13 Май 2016, 23:31:12 »

С кавычками тоже не меняет Грустный
Запускаю в безопасном режиме батник вот с этим содержимым
REG ADD "HKLM\SOFTWARE\ESET\ESET Security\CurrentVersion\Info" /v \"PackageFeatures\" /t REG_DWORD /d 0000003d /f
Записан

vvgNovanet
Ветеран
*****
Пол: Мужской
Сообщений: 526



« Ответ #41 : 13 Май 2016, 23:34:25 »

А если так Непонимающий
REG ADD "HKLM\Software\ESET\ESET Security\CurrentVersion\Info" /v PackageFeatures /t REG_dword /d 00000003 /f

Может у тебя винда 64 битная ? пробуй в конец записать /reg:64
REG ADD "HKLM\Software\ESET\ESET Security\CurrentVersion\Info" /v PackageFeatures /t REG_dword /d 00000003 /f/reg:64

https://support.microsoft.com/ru-ru/kb/948698
« Последнее редактирование: 13 Май 2016, 23:47:32 от vvgNovanet » Записан
Meys
Старожил
****
Пол: Мужской
Сообщений: 424



WWW
« Ответ #42 : 13 Май 2016, 23:47:02 »

Вот так прокатило 0x0000003d Улыбка
Записан

vvgNovanet
Ветеран
*****
Пол: Мужской
Сообщений: 526



« Ответ #43 : 13 Май 2016, 23:50:31 »

Вот так прокатило 0x0000003d Улыбка
Ну и прекрасно, потом рабочим батничком не забудь поделиться )))
Записан
Meys
Старожил
****
Пол: Мужской
Сообщений: 424



WWW
« Ответ #44 : 14 Май 2016, 00:00:45 »

попробовал без перезагрузки из безопасного режима вот так:
Код:
:: Настроить следующую перезагрузку в безопасном режиме
bootcfg /raw /a /safeboot:network /id 1
:: После загрузки выполнить следующие команды автозапуска:
:: Вернуть обратно нормальный режим загрузки (не безопасный)
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v "*UndoSB" /t REG_SZ /d "bootcfg /raw /fastdetect /id 1"
:: Внести требуемые изменения в реестр
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v "*ResetCounter" /t REG_SZ /d "REG ADD "HKLM\SOFTWARE\ESET\ESET Security\CurrentVersion\Info" /v PackageFeatures /t REG_DWORD /d 0x0000003d /f"
:: Выполнить перезагрузку
SHUTDOWN -r -f -t 03
опять не хочет менять параметр

похоже не выполняется вот эта часть
Код:
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /v "*ResetCounter" /t REG_SZ /d...
« Последнее редактирование: 14 Май 2016, 00:13:10 от Meys » Записан

Страниц: 1 2 [3] 4  Все   Вверх
Печать
ADSL.Kirov.RuСообществаПрограммирование (Модератор: Ivanidze)Тема: Надо научиться писать bat-файлы
Перейти в: