Форум: "Начинающим";
Текущий архив: 2007.09.30;
Скачать: [xml.tar.bz2];
ВнизВыключить компьютер Найти похожие ветки
← →
AIK © (2007-09-02 23:29) [0]Есть такая функция ExitwindowsEx с помошью которой можна выключить компьютер но на новых виндах XP она не помогает и для себя я использовал другой способ:
Procedure Power;
var f:text;
Begin
AssignFile(f,"power.bat");
rewrite(f);
Write(f,"shutdown -s");
CloseFIle(f);
ShellExecute(1, nil, "power.bat", nil, nil, sw_restore);
Sleep(1000);
DeleteFile("power.bat");
end;
Ну так вот если кто знает более правильный способ может подскажет?
← →
KJ13 © (2007-09-02 23:43) [1]Вот один из вариантов выключения компьютера:
procedure TForm1.BitBtn1Click(Sender: TObject);
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 or EWX_POWEROFF, 0);
end;
end;
P.S. Использовать только в благих целях. :)
← →
AIK © (2007-09-02 23:54) [2]Спасибо!!!
> P.S. Использовать только в благих целях. :)
Можешь не волноваться.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.09.30;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.043 c