Declare Function ExitWindowsEx Lib "user32" ( _
ByVal uFlags As Long, _
ByVal dwReserved As Long) As Long
ExitWindowsEx выключает или перезагружает компьютер.
| EWX_LOGOFF = 0 | Завершить сеанс пользователя. Отключает от сети. Аналог - войти в систему под другим именем. (Завершение сеанса [name]) |
| EWX_FORCE = 4 | Закрывает все программы без приглашения сохранить файлы |
| EWX_FORCEIFHUNG | Заставляет приложения завершиться, если они не реагируют на сообщения WM_QUERYENDSESSION или WM_ENDSESSION |
| EWX_POWEROFF = 8 | Завершает работу системы и, если есть возможность, выключает питание компьютера. вызывающий процесс должен иметь привилегию SE_SHUTDOWN_NAME |
| EWX_REBOOT = 2 | Перезагружает компьютер. Вызывающий процесс должен иметь привилегию SE_SHUTDOWN_NAME |
| EWX_SHUTDOWN = 1 | Завершает работу и выключает питание, записывает все файловые буферы на диск, останавливает все работающие системные процессы. Вызывающий процесс должен иметь привилегию SE_SHUTDOWN_NAME. Выводит сообщение, что можно выключить компьютер |
Смотри пример Программное выключение компьютера
AdjustTokenPrivileges, HandlerRoutine, SetProcessShutdownParameters