0

プログラム (メモ帳や firefox など) を閉じた直後に、いくつかの命令を実行する必要があります。プログラムがいつ閉じられたかを知り、これらの命令を実行する方法はありますか?

4

3 に答える 3

2

プロセスへのハンドルを取得して、シグナルが送られるのを待つことができます

于 2012-04-20T20:13:08.260 に答える
1

プログラムを「閉じる」ことについて話しているので、閉じられたプログラムにはトップレベルのウィンドウがあると思います。ウィンドウが破棄されるたびに通知されるように、シェル フックを登録します (HSHELL_WINDOWDESTROYED)。ウィンドウが監視したいプロセスに属しているかどうかを確認するだけです。これを行うには、 GetWindowThreadProcessId関数を使用できます。

于 2012-04-20T18:59:06.843 に答える
0

.Net では、目的のプロセスの Process.Exitedにフックすることでこれを実行できるはずです。

より複雑になるそのEXEのインスタンスに対してこれを行う場合。WMI イベントWin32_Processを使用して、パターンが一致するオブジェクトのインスタンスの削除を監視できます。

于 2012-04-20T18:10:19.093 に答える