Текущий архив: 2005.08.07;
Скачать: CL | DM;
Вниз
Перезагрузка, выключение, выход из системы. Найти похожие ветки
← →
Earth (2005-06-10 19:24) [0]Я думаю из названия всё понятно, если у кого есть коды - покажите, а то все те что я видел, только делают Log off.
← →
Vit@ly © (2005-06-10 19:49) [1]Попробуй
Function SetPrivilege(aPrivilegeName: String; aEnabled: Boolean ): Boolean;
Var TPPrev, TP: TTokenPrivileges;
Token: THandle;
dwRetLen: DWord;
Begin
Result:=False;
OpenProcessToken(GetCurrentProcess,TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, Token);
TP.PrivilegeCount:=1;
IF LookupPrivilegeValue(nil,PChar(aPrivilegeName),TP.Privileges[0].LUID ){)} then
Begin
IF aEnabled then TP.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED
else TP.Privileges[0].Attributes:=0;
dwRetLen:= 0;
Result:=AdjustTokenPrivileges(Token,False,TP,SizeOf(TPPrev),TPPrev,dwRetLen);
End;
CloseHandle(Token);
End;
procedure TForm1.Button1Click(Sender: TObject);
begin
SetPrivilege("SeShutdownPrivilege",True);
ExitWindowsEx(EWX_LOGOFF,0);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
SetPrivilege("SeShutdownPrivilege",True);
ExitWindowsEx(EWX_POWEROFF,0);
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
SetPrivilege("SeShutdownPrivilege",True);
ExitWindowsEx(EWX_REBOOT,0);
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
SetPrivilege("SeShutdownPrivilege",True);
ExitWindowsEx(EWX_SHUTDOWN,0);
end;
Надеюсь из наименования параметров ясно, чт делает каждый из ButtonClick
Успехов
Страницы: 1 вся ветка
Текущий архив: 2005.08.07;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.066 c