API
26.08.1999
  • Zablokowanie zamknięcia Windows.

       Wystarczy przechwycić komunikat WM_QUERYENDSESSION:

//--------------------------------------------------------
// w nagłówku:
class TForm1 : public TForm
{
__published:	// IDE-managed Components
private:	// User declarations
    void __fastcall WMQueryEndSession(TWMQueryEndSession &msg);
public:		// User declarations
    __fastcall TForm1(TComponent* Owner);

BEGIN_MESSAGE_MAP
  MESSAGE_HANDLER(WM_QUERYENDSESSION,
                           TWMQueryEndSession,WMQueryEndSession)
END_MESSAGE_MAP(TForm)
};
//----------------------------------------------------------


//----------------------------------------------------------
// w źródle:
void __fastcall TForm1::WMQueryEndSession(TWMQueryEndSession &msg)
{
    msg.Result = 0;
    ShowMessage("Przykro mi, nie wolno Ci zamykać...");
}