Форум: "WinAPI";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];
Внизперезагрузка выключение компьютера под разными ОС Найти похожие ветки
← →
Loki3D © (2004-08-31 12:14) [0]Я знаю, что есть программный код, который позволяет перезагрузить компьютер. Чтоб выключть компьютер, в коде нужно заменить Reboot на ShootDown, но это не работает..
Если кто-то реально выклюсал комп программно (конкретно под ХР), то выложите исходник ПЛЗ..
← →
VMcL © (2004-08-31 12:27) [1]FAQ
← →
DeadMeat © (2004-08-31 12:48) [2]
> ShootDown
Не ну если ты пристрелить ее хотел, то тада да... Тада врядли...
← →
grom (2004-08-31 13:26) [3]попробуй это -
выкл
procedure TForm1.SpeedButton1Click(Sender: TObject);
var
hToken: THandle;
tkp: _TOKEN_PRIVILEGES;
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_POWEROFF,0);
end;
end;
перезагузка
procedure TForm1.SpeedButton1Click(Sender: TObject);
var
hToken: THandle;
tkp: _TOKEN_PRIVILEGES;
returnLength: Cardinal;
begin
Windows.Beep(855,55);
hide;
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_REBOOT,0);
end;
end;
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.035 c