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

Вниз

команда в WinAPI   Найти похожие ветки 

 
DimaDukat   (2006-05-02 23:41) [0]

Подскажите пожалуйста, как программно выключить компьютер?


 
Джо ©   (2006-05-02 23:42) [1]

ExitWindowsEx


 
Lamer@fools.ua ©   (2006-05-03 00:08) [2]

http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988621105&n=15


 
VirEx ©   (2006-05-03 20:56) [3]

пуск -> выполнить -> cmd -> shutdown /?

rundll32.exe powrprof.dll,SetSuspendState //переход Windows в спящее состояние
shutdown -r -c "WinConsul перезагружает Windows, для отмены - stopRestart"
shutdown -r -t 0 //быстрая перезагрузка Windows
shutdown -a //отмена перезагрузки/завершения работы Windows
shutdown -s -c "WinConsul завершает работу Windows, для отмены - stopRestart"


 
Handle   (2006-05-03 22:12) [4]

procedure ExitWinNT(AShutdown: Boolean);
var
 hToken: THandle;
 tkp: TTokenPrivileges;
 ReturnLength: Cardinal;
begin
 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_force,0);
 end;
end;

procedure NTWait;
var
 hToken: THandle;
 tkp: TTokenPrivileges;
 ReturnLength: Cardinal;
begin
 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
     SetSystemPowerState(true, true);
 end;
end;

procedure NTReboot;
var
 hToken: THandle;
 tkp: TTokenPrivileges;
 ReturnLength: Cardinal;
begin
 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_REBOOT or ewx_force,0);
 end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
NTWait;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
NTReboot;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
ExitWinNT(True);
end;




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

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

Наверх




Память: 0.47 MB
Время: 0.029 c
2-1154962343
ArtemESC
2006-08-07 18:52
2006.08.27
Не найдеться ли у кого функция,


2-1155058414
Bober
2006-08-08 21:33
2006.08.27
GetFileSize


15-1153418279
Dok_3D
2006-07-20 21:57
2006.08.27
Чего все ополчились против Израиля?


15-1154412475
Карелин Артем
2006-08-01 10:07
2006.08.27
bahoor - что тако?


9-1133447973
Cash
2005-12-01 17:39
2006.08.27
OpenGL - Создание текстур