Se o script for executado rapidamente, você poderá criar uma tarefa agendada, que é acionada quando o ID de evento 1074 é registrado. Este é o ID que indica que o computador está sendo desligado.
Existem algumas instruções sobre como criar este tipo de tarefa agendada aqui .
Se sua tarefa for executada por muito tempo, você poderá conseguir contornar isso, abortando a solicitação original em seu script iniciando com shutdown /a
e desativando a tarefa agendada (usando schtasks
), executando seu script e terminando com uma chamada para shutdown
. Supondo que isso funcione (eu não testei), você precisará de uma nova tarefa agendada que seja executada na inicialização, o que reativa a tarefa de desligamento.