私の問題のコンテキストは次のとおりです。コンソールクローズイベントを捕まえる方法は?
- 私はメインプロセスとして実行するWindows .NETアプリケーション(GUI)を持っています。
- この(親)プロセスから、コンソールプロセスとして2つのサブプロセスを作成します。
- メインプロセスは、名前付きパイプを通じて子プロセスにデータを送信します。
- メインアプリケーションでは、私はサブプロセスのリストを持っています。
私の問題は、各コンソールにはクローズ( "x")ボタンがあり、終了することができるということです。主なアプリに作成されたコンソールのリストを保存しているので、コンソールがいつ終了するか知りたいと思います。
私のコンソール(子プロセス)プログラムは、パイプを読み込んで(そしてデータを表示する)ループ機能を持つ単なる "main()"です。それは、メッセージシステムを持たないか、またはウィンドウイングの「終了」を処理できるものは何もありません。
私の頭に浮かぶ最初のアイデアは、メインアプリケーションからサブプロセスをポーリングしてリストを更新することです。しかし、これは、コンソールを監視するタイマーやスレッドを導入する必要があることを意味します。私はその考えが気に入らない。
誰かが良いアイデアはありますか?