線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1108
推到 Plurk!
推到 Facebook!

如何得知自已的程式被外部程式關閉

尚未結案
edwardweng
一般會員


發表:29
回覆:5
積分:6
註冊:2003-04-16

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-11-23 00:15:15 IP:211.21.xxx.xxx 未訂閱
請問一下,要如何得知自己寫的程式被外部程式關閉呢?(外部程式指的是Windows工作管理員或其它)… 活到老,學到老 天天都有新鮮事 若有任何問題,歡迎寫信給我 e-mail: edward@coolboom.com.tw
tonytop
中階會員


發表:6
回覆:114
積分:89
註冊:2003-12-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-11-23 14:26:38 IP:210.64.xxx.xxx 未訂閱
 
unit Unit1;    interface    uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;    type
  TForm1 = class(TForm)
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
    procedure OnMessage(var Msg: Tmsg; var Handled: Boolean);
  public
    { Public declarations }
  end;    var
  Form1: TForm1;    implementation    {$R *.DFM}    procedure TForm1.OnMessage(var Msg: Tmsg; var Handled: Boolean);
begin
  case Msg.message of
    WM_CLOSE:
    begin
      ShowMessage('OH! 我要被別的程式終結了!');
      Application.Run; //少了這行程式會馬上被終止掉,但系統仍可強制終結
    end;
  end;
  inherited;
end;    procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  if Sender <> Self then
  begin
    CanClose:=False; //以工作管理員kill,此行無效
  end;
end;    procedure TForm1.FormCreate(Sender: TObject);
begin
  Application.OnMessage := OnMessage;  //自訂訊息處理函式
end;    end.
程式中已有註解,不用我多說。冬眠去~.~
jaya
初階會員


發表:9
回覆:70
積分:30
註冊:2002-05-22

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-11-26 21:20:26 IP:220.135.xxx.xxx 未訂閱
哦 哦 測試後,好像沒用哩! 我用的是 WinXP home Delphi 5 程式結束時,沒有任何訊息,就像沒寫任何程式碼一樣 是我那裡抄漏了嗎?
Snooze
一般會員


發表:18
回覆:21
積分:7
註冊:2002-06-03

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-07-13 16:18:26 IP:211.21.xxx.xxx 未訂閱
引言:
 
unit Unit1;    interface    uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;    type
  TForm1 = class(TForm)
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
    procedure OnMessage(var Msg: Tmsg; var Handled: Boolean);
  public
    { Public declarations }
  end;    var
  Form1: TForm1;    implementation    {$R *.DFM}    procedure TForm1.OnMessage(var Msg: Tmsg; var Handled: Boolean);
begin
  case Msg.message of
    WM_CLOSE:
    begin
      ShowMessage('OH! 我要被別的程式終結了!');
      Application.Run; //少了這行程式會馬上被終止掉,但系統仍可強制終結
    end;
  end;
  inherited;
end;    procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  if Sender <> Self then
  begin
    CanClose:=False; //以工作管理員kill,此行無效
  end;
end;    procedure TForm1.FormCreate(Sender: TObject);
begin
  Application.OnMessage := OnMessage;  //自訂訊息處理函式
end;    end.
程式中已有註解,不用我多說。冬眠去~.~ < face="Verdana, Arial, Helvetica"> 恩... 程式結束的無聲無息 Nice to meet u
------
Nice to meet u
系統時間:2024-07-03 6:58:22
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!