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

Вниз

ShutDown   Найти похожие ветки 

 
Quattro ©   (2005-07-31 01:23) [0]

Добрый день!...подскажите пожалуйста какое сообщение ответсвтенно за выключение компа??...ExitWindows(EW_?????,0)??


 
Eraser ©   (2005-07-31 01:31) [1]

Quattro ©   (31.07.05 01:23)

Не совсем понял вопрос, но думаю что ответ WM_ENDSESSION или WM_QUERYENDSESSION.


 
kami ©   (2005-07-31 01:33) [2]

Первоисточник :
BOOL ExitWindows(DWORD dwReserved, UINT uReserved);

Parameters
 dwReserved Reserved; must be zero.
 uReserved Reserved; must be zero.

Так что никаких сообщений в этой ф-и не передается - оба параметра=0.

Телепатируя, скажу, что при завершении работы всем приложениям отсылается WM_QUERYENDSESSION: The ExitWindows function asks applications if they want to terminate by sending WM_QUERYENDSESSION to the main window of all running applications.


 
Quattro ©   (2005-07-31 01:48) [3]

может быть я неверное выразил мысль..прошу за это извинить...например..ExitWindows(EW_RestartWindows,0)...или ExitWindos(EW_RebootSystem,0)...эти примеры так или иначе перезагружают систему..а надобно чтоб винда вместе с собой выключала и комп)))...может так понятнее? =))


 
Eraser ©   (2005-07-31 01:51) [4]

Quattro ©   (31.07.05 01:48) [3]

см. ExitWindowsEx


 
Quattro ©   (2005-07-31 02:30) [5]

Eraser ©   (31.07.05 01:51) [4]
хм...почему то не хочет вырубаться комп от такой вот строчки
if not ExitWindowsEx(EWX_SHUTDOWN,0) then ShowMessage("Nicht!");


 
Quattro ©   (2005-07-31 02:36) [6]

причём if not ExitWindowsEx(EWX_LOGOFF,0) then ShowMessage("Nicht!");-работает....как так?


 
kami ©   (2005-07-31 12:45) [7]

EWX_SHUTDOWN
Shuts down the system to a point at which it is safe to turn off the power. All file buffers have been flushed to disk, and all running processes have stopped.
The calling process must have the SE_SHUTDOWN_NAME privilege

А для EWX_LOGOFF не нужно никаких привилегий.

Да, еще - успешно отработавшая ExitWindows не означает, что комп выключится, а только что процесс выключения начался успешно.


 
Anatoly Podgoretsky ©   (2005-07-31 12:49) [8]

Quattro ©   (31.07.05 02:30) [5]
Так не видать здесь выключения компьютера, только выключение Виндоус. Ты бы все таки справку посмотрел.


 
Eraser ©   (2005-07-31 13:42) [9]

Quattro ©

  uses Windows;

procedure RebootSystem;
var

handle, ph: THandle;
pid, n: DWORD;
luid: TLargeInteger;
priv: TOKEN_PRIVILEGES;
dummy: PTokenPrivileges;
ver: TOSVERSIONINFO;
begin

ver.dwOSVersionInfoSize := Sizeof(ver);
GetVersionEx(ver);
if ver.dwPlatformId=VER_PLATFORM_WIN32_NT then begin
pid := GetCurrentProcessId;
if OpenProcessToken(ph, TOKEN_ADJUST_PRIVILEGES, handle) then
if LookupPrivilegeValue(nil, "SeShutdownPrivilege", luid) then begin
priv.PrivilegeCount := 1;
priv.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
priv.Privileges[0].Luid := luid;
dummy := nil;
AdjustTokenPrivileges(handle, false, priv, 0, dummy^, n);
end;
end;
ExitWindowsEx(EWX_REBOOT, 0); // !!! здесь подставляй нужный параметр
end;  



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

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

Наверх




Память: 0.48 MB
Время: 0.045 c
14-1124200197
Piter
2005-08-16 17:49
2005.09.25
LJ дневник человека, служащего в армии :)


1-1125575838
kyn66
2005-09-01 15:57
2005.09.25
ListView с разноцветными строками


6-1117626153
Rater
2005-06-01 15:42
2005.09.25
Socks через indy не работает (на FTP)


14-1125014136
программер__
2005-08-26 03:55
2005.09.25
Научиться играть на пианино


4-1122704571
Gloomer
2005-07-30 10:22
2005.09.25
Перехват перехода в спящий/ждущий режим