Const EWX_SHUTDOWN = 1 ' pour éteindre
Const EWX_REBOOT = 2 ' pour rebooter
Const EWX_FORCE = 4 ' pour forcer les processus à se terminer
Private Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long
(..)
ret& = ExitWindowsEx(EWX_SHUTDOWN, 0)
tu peux combiner avec EWX_FORCE :
ret& = ExitWindowsEx(EWX_FORCE OR EWX_SHUTDOWN, 0)
Là tu éteint ta machine à la bourrinos, cad que Windows n'envoie pas de message de fin aux processus actifs.