本實(shí)例介紹在程序運(yùn)行的過程中禁止用戶關(guān)閉操作系統(tǒng)。
用戶是否可以關(guān)閉操作系統(tǒng)是通過對(duì)WM_QueryEndSession的處理來實(shí)現(xiàn)的,為此首先需要在程序中添加WM_QueryEndSession消息處理的聲明:
procedure QueryEndSession(var Msg:TMessage);Message WM_QueryEndSession;
它的響應(yīng)代碼如下:
procedure TForm1.QueryEndSession(var Msg:TMessage);
begin
Msg.Result:=0;
end;
當(dāng)用戶關(guān)閉操作系統(tǒng)時(shí),操作系統(tǒng)會(huì)發(fā)布一個(gè)WM_QueryEndSession消息,這時(shí)就會(huì)激活本實(shí)例程序中的QueryEndSession過程,程序通過設(shè)置消息的返回值為0,就會(huì)禁止用戶關(guān)閉操作系統(tǒng),反之如果設(shè)置消息的返回值為1,就會(huì)允許用戶關(guān)閉操作系統(tǒng)。
程序代碼如下:
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鍵運(yùn)行程序。只要本程序在正常運(yùn)行,用戶就無法關(guān)閉操作系統(tǒng)。
在工程實(shí)際中,經(jīng)常需要使應(yīng)用程序不間斷地運(yùn)行,為了防止意外因素關(guān)閉操作系統(tǒng),可以使用本實(shí)例介紹的方法。
用戶是否可以關(guān)閉操作系統(tǒng)是通過對(duì)WM_QueryEndSession的處理來實(shí)現(xiàn)的,為此首先需要在程序中添加WM_QueryEndSession消息處理的聲明:
procedure QueryEndSession(var Msg:TMessage);Message WM_QueryEndSession;
它的響應(yīng)代碼如下:
procedure TForm1.QueryEndSession(var Msg:TMessage);
begin
Msg.Result:=0;
end;
當(dāng)用戶關(guān)閉操作系統(tǒng)時(shí),操作系統(tǒng)會(huì)發(fā)布一個(gè)WM_QueryEndSession消息,這時(shí)就會(huì)激活本實(shí)例程序中的QueryEndSession過程,程序通過設(shè)置消息的返回值為0,就會(huì)禁止用戶關(guān)閉操作系統(tǒng),反之如果設(shè)置消息的返回值為1,就會(huì)允許用戶關(guān)閉操作系統(tǒng)。
程序代碼如下:
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鍵運(yùn)行程序。只要本程序在正常運(yùn)行,用戶就無法關(guān)閉操作系統(tǒng)。
在工程實(shí)際中,經(jīng)常需要使應(yīng)用程序不間斷地運(yùn)行,為了防止意外因素關(guān)閉操作系統(tǒng),可以使用本實(shí)例介紹的方法。