Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.041 c
14-1125498070
hamster
2005-08-31 18:21
2005.09.25
Thumbs.db


1-1125940732
hgd
2005-09-05 21:18
2005.09.25
Записать файл на сервер


14-1125566369
May3ep
2005-09-01 13:19
2005.09.25
Не пойму, что с компьютером


1-1125925860
Гена
2005-09-05 17:11
2005.09.25
Вопрос про savedialog


2-1124013084
Гость22
2005-08-14 13:51
2005.09.25
Есть дата в виде 14.08.2005 Как переделать на 14/08/2005





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский