Файл пакетной обработки Windows 7 для отключения брандмауэра и перезапуска компьютера.

Вопрос или проблема

Я пытаюсь создать пакетный файл для выполнения того, что указано в заголовке. В настоящее время у меня есть:

netsh advfirewall set allprofiles state off

sleep 30

C:\windows\system32\shutdown -r -t 00

Этот пакетный файл перезагружает компьютер, но не отключает брандмауэр.

Должен ли сервис быть установлен в ручной режим перед запуском пакетного файла?

После некоторых экспериментов я обнаружил, что даже если вы отключите брандмауэр Windows с помощью netsh advfirewall, и перезагрузите компьютер, сервис брандмауэра Windows автоматически запустит его снова.

Чтобы это сработало, мне пришлось установить сервис брандмауэра Windows в ручной режим, а затем заново запустить скрипт, что отключило брандмауэр и без проблем перезагрузило компьютер.

Спасибо @DavidPostill за помощь с этим.

Ответ или решение

Для того чтобы создать пакетный файл, который отключает брандмауэр Windows 7 и перезагружает компьютер, необходимо учитывать некоторые особенности работы операционной системы. Ваша исходная идея почти правильная, но действительно нуждается в уточнении, чтобы гарантировать успех выполнения задачи. Ниже представлен детальный ответ и пошаговая инструкция.

Инструкция по созданию пакетного файла для отключения брандмауэра и перезагрузки компьютера

  1. Отключение брандмауэра:
    Чтобы отключить брандмауэр, вы используете команду:

    netsh advfirewall set allprofiles state off

    Эта команда отключает брандмауэр для всех профилей. Однако после перезагрузки Windows автоматически запустит службу брандмауэра.

  2. Настройка службы:
    Для того чтобы ваше отключение работало и после перезагрузки, вам нужно изменить тип запуска службы брандмауэра на "вручную". Используйте следующую команду:

    sc config MpsSvc start= demand

    Эта команда устанавливает службу "Windows Firewall" (MpsSvc) в режим ручного запуска.

  3. Перезагрузка системы:
    После отключения брандмауэра и изменения настроек службы необходимо перезагрузить компьютер. Используйте команду:

    shutdown -r -t 0

    Эта команда инициирует немедленную перезагрузку системы.

  4. Объединение команд в пакетный файл:
    Объедините все вышеперечисленные команды в одном пакетном файле (.bat). Ваш окончательный файл должен выглядеть следующим образом:

    @echo off
    netsh advfirewall set allprofiles state off
    sc config MpsSvc start= demand
    timeout /t 30
    shutdown -r -t 0

Объяснение и структура команд

  • @echo off: Отключает вывод команд в окне консоли, для более чистого отображения.
  • netsh advfirewall...: Отключает брандмауэр.
  • sc config MpsSvc...: Переключает службу брандмауэра на ручной запуск.
  • timeout /t 30: Задержка на 30 секунд перед перезагрузкой, чтобы пользователи могли увидеть уведомление об отключении брандмауэра.
  • shutdown -r -t 0: Выполняет немедленную перезагрузку системы.

Заключение

Создание пакетного файла для отключения брандмауэра и последующей перезагрузки системы в Windows 7 требует внимания к переключению настроек службы брандмауэра. Следуя указанным выше шагам, вы сможете добиться желаемого результата. Однако, помните, что отключение брандмауэра может привести к рискам безопасности, и его следует использовать с осторожностью.

Если у вас есть дополнительные вопросы или требуется помощь, не стесняйтесь задавать их.

Оцените материал
Добавить комментарий

Капча загружается...