Entre no agendador de tarefas do Windows.
- Crie uma tarefa básica.
- Insira um nome e uma descrição, clique em próximo
- Agora você deve estar na opção de acionador. Defina o gatilho como "Quando um evento específico é registrado" e clique em próximo.
- No menu suspenso Log, escolha "sistema"
- Na lista suspensa Fonte, selecione "Kernal-power"
- e no ID do evento, insira "109"
Depois disso, clique em next para iniciar um programa e, em seguida, carregue seu script. Isso deve executar o script antes que o comando de desligamento seja executado. Eu posso estar errado, mas esses passos devem apontar na direção certa.
Eu também tenho certeza que um regedit rápido seria capaz de desativar o botão de desligamento.
editar
Aqui está essa correção de regedit que pode atender às suas necessidades. link