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

Вниз

Завершение работы Windows   Найти похожие ветки 

 
Volhv   (2003-01-29 11:00) [0]

Доброго всем дня!
Проблема: запущено Delphi-приложение. При попытке перезагрузить или завершить работу Windows из памяти выгружаются некоторые процессы, а перезагрузка (завершение работы) не происходит.
Ловлю сообщение WM_QUERYENDSESSION:
procedure TFщкь1.WMQueryEndSession(var Msg:TWMQueryEndSession);
begin
inherited;
Msg.Result:=1;
end;
Бесполезно. Мое приложение не закрывается, Windows не завершает работу. Делал еще:
procedure TFщкь1.WMQueryEndSession(var Msg:TWMQueryEndSession);
begin
inherited;
Msg.Result:=1;
Close;
end;
Мое приложение закрывается, Windows НЕ завершает работу.
Есть какие-нибудь соображения на этот счет?


 
ККВ   (2003-01-29 12:25) [1]

Комментарий от "Макса" (halyavshik@mailru.com)
небольшое дополнение как выключить компутер с NT корректно компилируется в Delphi5 в 4 какие-то
проблемы с описанием констант привиллегий в других версиях Delphi не проверял:
program NTShutdown;
uses windows;
var
hToken: THandle;
tkp: TTokenPrivileges;
ReturnLength: Cardinal;
begin
if OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES or
TOKEN_QUERY, hToken) then begin
LookupPrivilegeValue(nil, "SeShutdownPrivilege",
tkp.Privileges[0].Luid);
tkp.PrivilegeCount:=1; // one privelege to set
tkp.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED;
if AdjustTokenPrivileges(hToken, False, tkp, 0, nil, ReturnLength)
then
ExitWindowsEx(EWX_SHUTDOWN or EWX_POWEROFF, 0);
end;
end.


 
Volhv   (2003-01-29 13:07) [2]

Так пробовал - не выходит. У меня Delphi 6. Компилируется нормально.
Вообще, проблема только под Windows 2000 (NT не знаю, наверное, тоже)


 
Volhv   (2003-01-29 13:52) [3]

Спасибо, уже решил! Помогло:
procedure TForm1.WMQueryEndSession(var Msg:TWMQueryEndSession);
begin
inherited;
Msg.Result:=1;
CallTerminateProcs;
Halt;
end;



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

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

Наверх




Память: 0.44 MB
Время: 0.008 c
3-76302
romychk
2003-03-04 16:32
2003.03.24
Как подключиться ид Д5 к MySQL под FreeBSD


14-76581
Alex-21
2003-02-26 18:48
2003.03.24
Как заменить в ListBoxe имя?


3-76315
paulsin
2003-03-04 10:33
2003.03.24
External File


1-76396
VIB
2003-03-11 15:20
2003.03.24
Компоненты


3-76314
Merlot
2003-03-05 11:13
2003.03.24
Доступ к FoxPro базам через ADO...





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский