防止關閉windows (轉)
有時候在執行當中,不允許別的程式或人為的關閉,除非應用程式知道將要退出,其實這樣很簡單,我們都知道將要關閉時,會向每一個程式傳送WM_QUERYENDSESSION這條關機訊息,只要我們的程式接受到此訊息後,做恰當的處理即刻完成我們所需要的。
處理windows訊息有好幾種,在這裡我們利用Application的OnMessage事件,建立響應該事件的過程即可!如下面的例子:
unit unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
private
{ Private declarations }
public
procedure AppMessageHandler(var Msg:TMsg; var Handled:Boolean);//宣告系統處理訊息過程,響應Application的OnMessage事件的過程必須為TMessageEvent型別;
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.AppMessageHandler(var Msg:TMsg; var Handled:Boolean);
begin
if Msg.message=WM_QueryEndSession then//如果收到的訊息為關閉計算機的訊息時,進行特別處理,因為只是一個例子,我只寫出彈出對話方塊,大家可以根據自己程式的需要進行響應的處理;
begin
if messagedlg('shutdown?',mtconfirmation,mbyesnocancel,0)= mryes then
Handled:=true
else
Handled:=false;
end;
end;
end.
最後在程式的DPR中,建立窗體之後但在Application.Run前加入
Application.OnMessage:=Form1.AppMessageHandler;即可!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-993657/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JS防止重新整理,後退,關閉JS
- Windows XP巧妙關閉USB錯誤提示的方法(轉)Windows
- 在 Windows 98 中關閉光碟自動播放功能(轉)Windows
- nginx windows下 快速關閉NginxWindows
- win10 windows update怎麼關閉_win10 windows update關閉方法Win10Windows
- win10關閉windows defenderWin10Windows
- Windows關閉Microsoft Defender服務WindowsROS
- 徹底關閉windows安全中心Windows
- 如何關閉Windows自動更新Windows
- win10如何永久關閉windows defender_win10徹底關閉windows defender教程Win10Windows
- 為防止 Zombieload v2 攻擊,Windows 和 Linux 引入選項關閉英特爾 TSXWindowsLinux
- windows10怎麼關閉防毒_windows10關閉自帶防毒軟體的方法Windows防毒
- windows10 自動更新怎麼關閉_關閉windows10 自動更新的方法Windows
- windows10怎麼關閉快速啟動_windows10關閉快速啟動的方法Windows
- win10關閉windows defender方法 win10 如何關閉 defenderWin10Windows
- MySQL Windows下關閉和啟動MySqlWindows
- windows 根據標題,關閉程式Windows
- 為監聽設定密碼防止遠端關閉監聽密碼
- win10 windows update怎麼關閉 win10 windows update自動更新怎麼關閉Win10Windows
- 快速關閉系統(轉)
- win10怎麼關閉家庭組 windows10家庭組關閉Win10Windows
- win10如何關閉Windows ink工作區 win10關閉Windows ink工作區的步驟Win10Windows
- windows10怎麼關閉通知欄訊息|windows10通知欄訊息關閉的方法Windows
- Windows10徹底關閉休眠功能Windows
- windows8怎麼關閉家庭組Windows
- windows終端下mysql無法正常關閉WindowsMySql
- win10怎麼關閉defender_win10關閉Windows defender的方法Win10Windows
- win10 uefi模式如何關閉_windows10怎麼關閉uefi模式Win10模式Windows
- windows10如何關閉休眠_win10怎麼關閉待機休眠WindowsWin10
- win10怎麼關閉windows defender_win10如何關閉window defenderWin10Windows
- win10如何啟用或關閉windows功能_win10啟用或關閉windows功能的方法Win10Windows
- win10如何關閉“Windows安全中心”功能_win10內建windows defender安全中心的關閉方法Win10Windows
- 怎麼關閉win10鎖屏介面 windows關閉鎖屏介面的方法Win10Windows
- win10系統快速啟動怎麼關閉 關閉Windows快速啟動Win10Windows
- windows10系統如何關閉tgp限速Windows
- 關閉Windows vista SuperFetch的方法Windows
- win10怎麼關閉夜間模式_windows10如何關閉夜間模式Win10模式Windows
- Windows10搜尋框怎麼關閉_Win10如何關閉搜尋框WindowsWin10