![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Надо програмным путём сделать Shut Down компа. КАК? [D6, Win95/98, WinME, Win2k]
Pirate © (2003-11-15 18:38:00)
В общем-то по теме уже всё ясно. Нажал кнопку-комп сделал завершение работы. всё.
Если можно, то примеры приведите.
Cash (2003-11-15 23:48:00) [1]
Хей. загляни поглубже. там мой вопрос на туже тему. Вадимпредложил самое конструктивное решение, коим сей момент и пользую. Вопрос: Сделать Выл. Виндам
Дубинин Алексей (2003-11-15 23:46:00) [2]
{ВЫКЛЮЧЕНИЕ С БЛОКОМ "АТ"}
program reboot;
uses Windows;
procedure Shutdown(Name:String; // Имя машины (\\SERVER)
msg:String; // Сообщение
Delay:Integer; // Задержка перед рестартом
Restart,CloseAll:Boolean);
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);
InitiateSystemShutdown(PChar(name),PChar(Msg),Delay,Restart,CloseAll);
end;
begin
Shutdown("", "", 0, True, False);
end.
{ВЫКЛЮЧЕНИЕ С БЛОКОМ "АТХ"}
program reboot;
uses Windows;
procedure Shutdown;
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 + EWX_FORCE + EWX_POWEROFF, 0);
end;
begin
Shutdown;
end.
Zew (2003-11-15 20:07:00) [3]
ExitWindowsEwx()