4
Windows APIは、(Ctrl + Cを使用する代わりに)閉じるボタンをクリックして終了すると、実行中のDelphiアプリケーションにコンソールウィンドウで通知する方法を提供していますか?閉じるボタンをクリックしたときにコンソールウィンドウプログラムに通知する方法はありますか?
関連質問:How do I handle Ctrl+C in a Delphi console application?
Windows APIは、(Ctrl + Cを使用する代わりに)閉じるボタンをクリックして終了すると、実行中のDelphiアプリケーションにコンソールウィンドウで通知する方法を提供していますか?閉じるボタンをクリックしたときにコンソールウィンドウプログラムに通知する方法はありますか?
関連質問:How do I handle Ctrl+C in a Delphi console application?
OSは、経由して様々なイベントのコンソールプログラムを通知「の制御信号。」シグナルを配信するようにa function for the OS to callを設定するには、SetConsoleCtrlHandler
に電話してください。閉じたウィンドウの信号はCTRL_CLOSE_EVENT
です。
function ConsoleEventProc(CtrlType: DWORD): BOOL; stdcall;
begin
if (CtrlType = CTRL_CLOSE_EVENT) then
begin
// optionally run own code here
// ...
end;
Result := True;
end;
...
begin
SetConsoleCtrlHandler(@ConsoleEventProc, True);
// my application code here
// ...
end.
ああ、来る、リンクされたQには答えが含まれています! CTRL_CLOSE_EVENT通知は、ここに示したのとまったく同じ方法で処理します。 – OnTheFly
これはすべてここに書かれています:http://msdn.microsoft.com/en-us/library/ms683242.aspx –
おそらく、@ユーザーですが、*この*質問への答えを探している人は*質問タイトル。 2つの異なる質問が同じまたは類似の回答を持つことは問題ありません。また、誰かが既にその答えを知っているという質問を投稿することもOKです。後で他の人が答えを見つけやすくなります。 –