Форум: "WinAPI";
Текущий архив: 2005.07.11;
Скачать: [xml.tar.bz2];
ВнизРабота с Win Api Найти похожие ветки
← →
Вадим_ВВ (2005-05-17 15:35) [0]Какие существуют функции WinApi для перезагрузки или выключения системы программно, кроме ExitWindows, она только выходит из системы и все. Если это единственная функция то какие надо вводить параметры?
← →
Игорь Шевченко © (2005-05-17 15:53) [1]ZwShutdownSystem :)
← →
DVM © (2005-05-17 16:28) [2]
> Вадим_ВВ (17.05.05 15:35)
http://delphibase.spb.ru/?action=viewtopic&topic=syscontrol
← →
noname:)) (2005-05-17 17:00) [3]procedure shutdown;
var
hToken, hProcess: THandle;
tp, prev_tp: TTokenPrivileges;
Len: DWORD;
begin
hProcess := OpenProcess(PROCESS_ALL_ACCESS, True, GetCurrentProcessID);
try
if not OpenProcessToken(hProcess, TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY,
hToken) then Exit;
finally
CloseHandle(hProcess);
end;
try
if not LookupPrivilegeValue("", "SeShutdownPrivilege",
tp.Privileges[0].Luid) then Exit;
tp.PrivilegeCount := 1;
tp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
if not AdjustTokenPrivileges(hToken, False, tp, SizeOf(prev_tp),
prev_tp, Len) then Exit;
finally
CloseHandle(hToken);
end;
ExitWindowsEx(EWX_SHUTDOWN, 0);
end;
В WinXP для выключения сначала надо получить привилегии.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2005.07.11;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.042 c