Delphi編程禁止用戶關閉操作系統
Delphi編程禁止用戶關閉操作系統,本實例介紹在程序運行的過程中禁止用戶關閉操作系統。
用戶是否可以關閉操作系統是通過對WM_QueryEndSession的處理來實現的,為此首先需要在程序中添加WM_QueryEndSession消息處理的聲明:
- procedure QueryEndSession(var Msg:TMessage);Message WM_QueryEndSession;
它的響應代碼如下:
- procedure TForm1.QueryEndSession(var Msg:TMessage);
- begin
- Msg.Result:=0;
- end;
當用戶關閉操作系統時,操作系統會發布一個WM_QueryEndSession消息,這時就會激活本實例程序中的QueryEndSession過程,程序通過設置消息的返回值為0,就會禁止用戶關閉操作系統,反之如果設置消息的返回值為1,就會允許用戶關閉操作系統。
程序代碼如下:
- unit Unit1;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs;
- type
- TForm1 = class(TForm)
- private
- { Private declarations }
- procedure QueryEndSession(var Msg:TMessage);Message WM_QueryEndSession;
- public
- { Public declarations }
- end;
- var
- Form1: TForm1;
- implementation
- {$R *.dfm}
- procedure TForm1.QueryEndSession(var Msg:TMessage);
- begin
- Msg.Result:=0;
- end;
- end.
保存文件,然后按F9鍵運行程序。只要本程序在正常運行,用戶就無法關閉操作系統。
在工程實際中,經常需要使應用程序不間斷地運行,為了防止意外因素關閉操作系統,可以使用本實例介紹的方法。
【編輯推薦】


















