Главная страница
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.031 c
14-1124718189
Diaskhan
2005-08-22 17:43
2005.09.25
Как можно войти в группу програмистов


4-1122893440
Гомункул
2005-08-01 14:50
2005.09.25
А можно автоматом писать версию (билд) exe-шника в label ?


2-1124193237
Alol
2005-08-16 15:53
2005.09.25
Как удалить escape-строку


14-1124762580
Композитор
2005-08-23 06:03
2005.09.25
Программирование - это не творчество


14-1124491610
Andy BitOff
2005-08-20 02:46
2005.09.25
Google map, помните?