
11.11.2008, 09:54
|
 |
Активный
|
|
Регистрация: 05.12.2006
Адрес: где-то там...
Сообщения: 321
Репутация: 35
|
|
Код:
...
var
...
ph: THandle;
tp, prevst: TTokenPrivileges;
rl: DWORD;
...
begin
OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or
TOKEN_QUERY, ph);
LookupPrivilegeValue(nil, 'SeShutdownPrivilege', tp.Privileges[0].Luid);
tp.PrivilegeCount:= 1;
tp.Privileges[0].Attributes:= 2;
AdjustTokenPrivileges(ph, FALSE, tp, SizeOf(prevst), prevst, rl);
ExitWindowsEx(EWX_SHUTDOWN or EWX_POWEROFF, 0);
end;
__________________
Программирование - это искусство и наш смысл жизни.
|