Форум — Ответы     (  К темам )
 ?  1: Как программно запретить перезагрузку Windows? (05-12-2002 12:09:02)
1
 Devnvd (08-12-2002 14:44:41)
Вы можете отменить перезагрузку если ваша программа в отработчике сообщения
WM_QUERYENDSESSION возвратите 0 и не дадите при этом отрабатывать это сообщение
отработчику по умолчанию.
Например:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
WindowProc=MyWindowProc;
}
void __fastcall TForm1::MyWindowProc(TMessage &msg)
{
if(msg.Msg==WM_QUERYENDSESSION)
{
msg.Result=0;
}
else
WndProc(msg);
}
 Павел (10-12-2002 14:25:02)
или например в обработчике формы OnCloseQuery запретите закрытие формы
void __fastcall TForm1::FormCloseQuery(TObject *Sender, bool &CanClose)
{
// закроет если только поставить галочку в CheckBox1
if(CheckBox1->Checked) CanClose = true;
else CanClose = false;
}