Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.03;
Скачать: CL | DM;

Вниз

Как выключить   Найти похожие ветки 

 
xfrost   (2003-02-08 15:30) [0]

Подскажите пожалуйста как выключить комп под win2000 без сообщения "Теперь питание компа можно отключить"!!!!!!!!!!


 
Михайлов Антон   (2003-02-08 17:52) [1]

Procedure Shutdown;
var
hToken: THandle;
tkp: TTokenPrivileges;
ReturnLength: Cardinal;
begin
If Win32Platform = VER_PLATFORM_WIN32_WINDOWS Then
Begin
if not ExitWindowsEx(EWX_Force or
EWX_PowerOff or
EWX_ShutDown, 0) then
MessageBox(0, "An application refused to terminate", "Win32", MB_OK);
end;

If Win32Platform = VER_PLATFORM_WIN32_NT Then
if OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken) then
begin
LookupPrivilegeValue(nil, "SeShutdownPrivilege",tkp.Privileges[0].Luid);
tkp.PrivilegeCount:=1;
tkp.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED;
if AdjustTokenPrivileges(hToken, False, tkp, 0, nil, ReturnLength)then
ExitWindowsEx(EWX_SHUTDOWN or EWX_POWEROFF, 0);
end;

end;

procedure TForm1.button1Click(Sender: TObject);
begin
Shutdown;
end;


Код не тестировался, но думаю работать будет



Страницы: 1 вся ветка

Текущий архив: 2003.04.03;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.025 c
1-6572
cLe0
2003-03-20 11:52
2003.04.03
ValueListEditor -


1-6434
Vitek
2003-03-20 17:33
2003.04.03
Проблема с ControlBar и ToolBar


1-6464
som
2003-03-24 12:50
2003.04.03
Файлы и каталоги


14-6707
michael_b
2003-03-15 17:56
2003.04.03
Кто решит СУПЕР задачу по алгебре?


9-6289
Driverrr
2002-11-02 13:08
2003.04.03
Че мне делать?