Я хотел бы запустить пакетный сценарий при завершении работы Windows 10 с помощью командной строки. Я знаю, что это не легко.
Все, что я знаю о GPedit.msc, это то, что когда вы устанавливаете скрипт завершения работы, он создает следующие записи regedit:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts\Shutdown\0]
"GPO-ID"="LocalGPO"
"SOM-ID"="Local"
"FileSysPath"="C:\\Windows\\System32\\GroupPolicy\\Machine"
"DisplayName"="Stratégie de groupe locale"
"GPOName"="Stratégie de groupe locale"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts\Shutdown\0\0]
"Script"="C:\Windows\System32\cmd.exe"
"Parameters"="/C "C:\BATCH_FILE.bat""
"ExecTime"=hex(b):00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
(Эти записи одинаковы для запуска, просто изменяет выключение для запуска. )
(Я видел, что на некоторых форумах говорят, что в следующей записи regedit Gpedit также создает записи Script: HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System
но это не так, по крайней мере, в Windows 10. )
(Для запуска пакетного сценария в LogOFF необходимо использовать C:\Windows\System32\cmd.exe
качестве имени сценария и /C C:\path\to\batch\script.bat
в качестве параметров сценария. )
А также создает файл Script.ini
в следующем каталоге:
C:\WINDOWS\system32\GroupPolicy\Machine\Scripts
Зная все это, я экспортировал эти записи regedit в файл .reg и скопировал Script.ini; Я удалил запись из GPedit.msc и попытался установить Script вручную, запустив файл .reg и снова скопировав файл script.ini в его каталог (все это легко можно сделать с помощью CMD), но это не сработало. GPedit.msc показывает запись LogOFF, но она работает, только если я нажимаю изменить и применить ...
Я также попытался обновить GPedit с помощью команды gpupdate /force
после установки скрипта вручную, но ничего не произошло.
Я думаю, что я так близко, чтобы решить это ...