Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

1)ExitWindows(EWX_PowerOff ,0); 2) WinExec(Name1, SW_SHOWNORMAL); [D7, WinXP]


HF-Trade ©   (2004-09-02 00:04:00) 

Сабж 1)
Господа, поможите тупому, мож я че не так пишу - мне надо чтоб комп выключался полностью, всмысле питание , а он у меня только перелогинивается пробовал ShutDown, PowerOFF и еще чего то, уже не помню, а он только перелогиниванется... памажите.

Сабж 2)
После ентой строки должна запускаться прога, но она запускается только после того как я закрываю свое приложение, если приделать под обработчик с кнопки, то усе нормально, а мне надо чтоб при определенных условиях загружалась определенная прога т.е. без нажатия на кнопку или ссылу там, ну я понятно обьяснил? ;_) Вощем хэлп ми!


Агент Х-СОМ   (2004-09-02 19:23:00) [1]

Вот образец ф-ции выключения компа:

procedure TfrmMain.PowerOff(Flags: UINT);
var
 tokenPriv: TTokenPrivileges;
 tokenHandle: THandle;
begin
 if (Win32Platform = VER_PLATFORM_WIN32_NT) and
   ((Flags and (EWX_POWEROFF or EWX_REBOOT or EWX_SHUTDOWN)) <> 0) then
 begin
   if OpenProcessToken(GetCurrentProcess,TOKEN_ADJUST_PRIVILEGES,
     TokenHandle) then begin
     if LookupPrivilegeValue(nil,'SeShutdownPrivilege',
       TokenPriv.Privileges[0].LUID) then
     begin
       TokenPriv.PrivilegeCount:=1;
       TokenPriv.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED;
       if not AdjustTokenPrivileges(TokenHandle,false,TokenPriv,0,
         TTokenPrivileges(nil^),DWORD(nil^)) then exit;
     end;
   end;
 end;
 ExitWindowsEx(Flags, 0);
end;



Образец вызова:

PowerOff(EWX_REBOOT);..перезагрузка
PowerOff(EWX_LOGOFF);..сеанс

if (EWX_POWEROFF) <> 0 then begin
     PowerOff(EWX_POWEROFF);
   end
   else begin
     PowerOff(EWX_SHUTDOWN);
   end;..выключение с поддержкой Win95


HF-Trade   (2004-09-02 05:58:00) [2]

Andy BitOff

Читал, просто я думал это под старые версии делфи, а типа в новых пофигу... пасиб.. попробую.

С 2) Все нормул... поправил, все равно всем пасиб.


Andy BitOff   (2004-09-02 02:34:00) [3]

1)
Ты наверное не читал help по ExitWindowsEX:

Windows NT: To shut down or restart the system, the calling process must use the AdjustTokenPrivileges function to enable the SE_SHUTDOWN_NAME privilege. For more information about security privileges, see Privileges.


Andy BitOff   (2004-09-02 02:29:00) [4]

2)
Не зняю в чем у тебя проблема. Все работает.

procedure TForm1.FormCreate(Sender: TObject);
begin
 WinExec('c:\Program Files\Microsoft Office\Office10\EXCEL.EXE', SW_SHOWNORMAL);
 Halt;
end;


HF-Trade   (2004-09-02 02:05:00) [5]

Если ExitWindowsEX... то у меня просто моя прога закрывается и все.


GuAV   (2004-09-02 01:43:00) [6]


> ExitWindows

ExitWindowsEx
> 2 Вощем в определенное время должна запускаться определенная
> прога.
> Но прога загружается только после того как я закрываю свое
> приложение.

Как в таких случаях говорят, ошибка в 17 строке


HF-Trade   (2004-09-02 01:26:00) [7]

1 Тоже самое, только перелогинивается и усе....

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


**   (2004-09-02 00:41:00) [8]

1
> ExitWindows(EWX_PowerOff ,0);

ExitWindows(EWX_SHUTDOWN or EWX_POWEROFF ,0);

2
> я понятно обьяснил?

нет


Наверх

Титульная страница Поиск, карта сайта Написать письмо