![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Здраствуйте. Как мне выеключить компьютер, чтобы он просто выключился и все (без всяческих вопросов и т.п.)
На сайте "http://www.delphisources.ru/pages/faq/base/power_off_kill.html" нашел такой код: Код:
procedure Shutdown2; var hToken: THandle; tkp: _TOKEN_PRIVILEGES; DUMMY: PTokenPrivileges; DummyRL: Cardinal; begin DUMMY := nil; if not OpenProcessToken( GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken ) then raise TShutdownEx.Create('OpenProcessToken failed'); if (not LookupPrivilegeValue(nil, 'SeShutdownPrivilege', tkp.Privileges[0].Luid)) then raise TShutdownEx.Create('LookupPrivilegeValue failed'); tkp.PrivilegeCount := 1; tkp.Privileges[0].Attributes := $0002; //SE_PRIVILEGE_ENABLED = $00002 AdjustTokenPrivileges(hToken, FALSE, tkp, 0, Dummy, DummyRL); if (GetLastError() <> ERROR_SUCCESS) then raise TShutdownEx.Create('AdjustTokenPrivileges failed'); if (not ExitWindowsEx(EWX_SHUTDOWN or EWX_FORCE, 0)) then raise TShutdownEx.Create('ExitWindowsEx failed'); end; Admin: Используем теги для оформления кода, иначе санкции! Но Делфя ругается отчего-то на TShutdownEx. Грит не знаю таких букафф. Последний раз редактировалось Admin, 05.05.2008 в 22:11. |