DESLIGAR O COMPUTADOR VIA CODIGO

EVERSON.PASETTO 21/12/2010 20:12:53
#360134
Como faço para desligar o computador via codigo de modo que ele finalize todas os programas do windows..
Igual quando a gente deliga o Windows XP.. entendem..

Tenho um codigo que achei na net..

No form tem este codigo

Private Sub Command1_Click()
RtlAdjustPrivilege SE_SHUTDOWN_PRIVILEGE, 1, 0, 0
NtShutdownSystem EWX_POWEROFF
End Sub


E no modulo este...

Public Declare Function RtlAdjustPrivilege& Lib [Ô]ntdll[Ô] (ByVal Privilege&, ByVal NewValue&, ByVal NewThread&, OldValue&)
Public Declare Function NtShutdownSystem& Lib [Ô]ntdll[Ô] (ByVal ShutdownAction&)
Public Const SE_SHUTDOWN_PRIVILEGE& = 19
Public Const XP_SHUTDOWN = 0
Public Const XP_RESTART = 1
Public Const XP_POWEROFF = 2

Mas acontece que quando executo.. ele desliga o computador direto.. (como se a gente precionasse o botão power para forçar o desligamento)
Quero desligar normalmente.. fazendo todas as finalizações..

Obrigado e até +
E um Feliz Natal a todos
TECLA 21/12/2010 22:10:36
#360139
SNNIFFER 22/12/2010 00:00:25
#360148
Resposta escolhida
Ae Everson, é só colocar este código no evento click de um botão:


[txt-color=#e80000]Shell [Ô]shutdown.exe -s -t 00[Ô], vbHide[/txt-color]




Boa sorte.
Tópico encerrado , respostas não são mais permitidas