07/05/19 08:10:09
ネットを参考にして作ってみた。XPでのみ動作確認。ExitWindowsEx
のかわりにsysexitでもOK。
#include "kernel32.as"
#include "advapi32.as"
#include "user32.as"
#const FALSE 0
#const NULL 0
#const TOKEN_ADJUST_PRIVILEGES 0x20
#const TOKEN_QUERY 0x08
#const SIZE_LUID 8 // 構造体サイズ
#const SIZE_LUID_AND_ATTRIBUTES 12
#const SIZE_TOKEN_PRIVILEGES 16 // 特権情報を1つだけ設定する場合(PRIVILEGE_COUNT=1)
#define SE_SHUTDOWN_NAME "SeShutdownPrivilege"
#const SE_PRIVILEGE_ENABLED 0x02
#const PRIVILEGE_COUNT 1
#const EWX_LOGOFF 0
#const EWX_SHUTDOWN 1
#const EWX_REBOOT 2