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

Вниз

перезагрузить компьютер   Найти похожие ветки 

 
Dmitry_177   (2007-04-02 13:07) [0]

Как можно полностью перезагрузить компьютер?
Сделал так:

ExitWindows(EWX_REBOOT, 0);

но компьютер не полностью перезагружается, а выходит из текущего пользователя в окно ввода пароля..


 
Rouse_ ©   (2007-04-02 13:26) [1]

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   Button2: TButton;
   Button3: TButton;
   Button4: TButton;
   Button5: TButton;
   procedure Button1Click(Sender: TObject);
   procedure Button2Click(Sender: TObject);
   procedure FormCreate(Sender: TObject);
   procedure Button3Click(Sender: TObject);
   procedure Button4Click(Sender: TObject);
   procedure Button5Click(Sender: TObject);
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

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.FormCreate(Sender: TObject);
begin
 SetPrivilege("SeShutdownPrivilege", True);
end;

// Выключить комп
procedure TForm1.Button1Click(Sender: TObject);
begin
 ExitWindowsEx(EWX_POWEROFF, 0);
end;

// Перезагрузить
procedure TForm1.Button2Click(Sender: TObject);
begin
 ExitWindowsEx(EWX_REBOOT, 0)
end;

// Завершить сеанс
procedure TForm1.Button3Click(Sender: TObject);
begin
 ExitWindows(EWX_LOGOFF, 0)
end;

// Ждущий режим
procedure TForm1.Button4Click(Sender: TObject);
begin
 SetSystemPowerState(True, False);
end;

// Спящий режим
procedure TForm1.Button5Click(Sender: TObject);
begin
SetSystemPowerState(False, False);
end;

end.


 
Dmitry_177   (2007-04-02 13:33) [2]

Спасибо!!! =)



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

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

Наверх




Память: 0.47 MB
Время: 0.053 c
2-1178472336
Герасим
2007-05-06 21:25
2007.05.27
Работа со списком. Что к чему?


15-1178100684
ыукмшсу
2007-05-02 14:11
2007.05.27
Регистрация службы в MS Vista


2-1178371931
ctudent
2007-05-05 17:32
2007.05.27
Как получить почту?


10-1123905651
kblc
2005-08-13 08:00
2007.05.27
Как создать SingletonComServer?


2-1177655982
ОльгаС
2007-04-27 10:39
2007.05.27
Ehlib и инсталяция