Вы можете просто использовать Windows "Task Scheduler" для запуска сценария при включении питания (при условии, что у вас есть права администратора).
Для создания нового задания сделайте следующее:
- Нажмите WINDOWS+R на клавиатуре
- Введите "taskschd.msc" и нажмите клавишу ВВОД.
- Нажмите «Создать базовую задачу ...», которая находится в разделе "Действия"
- Теперь мастер поможет вам создать вашу задачу
Чтобы запустить задачу при запуске системы, вам также нужно сделать следующее (после того, как вы выполнили шаги, описанные выше, и выбрали "При запуске" в качестве триггера):
- Дважды щелкните на задании, которое вы создали ранее
- Нажмите «Изменить пользователя или группу ...»
- Войдите в "LocalService" и нажмите ENTER
- Перейдите на вкладку "Условия" и снимите все, если вы не хотите условие
- Нажмите "ОК", чтобы сохранить изменения
После тестирования вашей новой задачи вы можете задаться вопросом, почему ваша задача не запускается в Windows 8 или Windows 10 с помощью "Завершение работы", а затем снова включите компьютер.Это вызвано функцией, называемой "быстрый запуск", которая по умолчанию включена в каждой системе Windows 8 или 10, она обеспечивает более быстрый запуск, переводя компьютер в спящий режим основной системы, которая копирует только данные оперативной памяти ядра и других компонентов, относящихся к системе, в файл на жестком диске при завершении работы и копирует эти данные обратно при запуске.Таким образом, ваша задача обычно никогда не запускается, потому что система никогда не завершает работу полностью и никогда не запускает ее полностью, за исключением обновления системы или использования функции Windows "Перезагрузка".
Чтобы отключить "быстрый запуск", перейдите в «Панель управления> Оборудование и звук> Параметры питания> Параметры системы» и снимите флажок "Включить быстрый запуск".
Чтобы запустить скрипт при запуске без отключения "быстрого запуска", взгляните на RunAsService, который помогает вам зарегистрировать скрипт как сервис.
Пример для BAT-скрипта:
RunAsService.exe install "yourservicename" "C:\Windows\System32\cmd.exe" "/C C:\Program Files\myscripts\dosomething.bat"
СОВЕТ: Если RunAsService.exe возвращает "Реферал был возвращен с сервера", откройте его свойства, перейдите на вкладку "Совместимость", нажмите "Изменить настройки для всех пользователей", установите флажок "Запускать программу от имени администратора" и нажмите дважды на "ОК".
Другой способ запуска скрипта / программы при каждом запуске без отключения "быстрого запуска" - это использование «taskschd.msc» для задания задачи, триггер которой является системным событием, генерируемым при каждом запуске, даже если "быстрый запуск" включен.