2

コンピューター上で新しいアプリケーションの開始または停止を検出する方法を誰かが知っているかどうか知りたいと思っていました。たとえば、ユーザーがログインして Word、Outlook、または IE を開きます。そのインスタンスの開始をキャッチしたい。私はプロセスで働いています。

バックグラウンドで実行され、イベント ログに書き込むサービスを構築しています。

       public string applicationID()
    {
        Process p = new Process();
        string application = p.ProcessName.ToString();
        return application;
    }

プロセスリストを取得するために foreach を実行することを知っています。いくつかのポインターまたはサンプルは素晴らしいでしょう。

4

1 に答える 1

0

プロセス オブジェクトを取得したら、「Exited」イベントにハンドラーを追加して、いつ停止したかを検出できます。これが機能するには、「EnableRaisingEvents」プロパティを「True」に設定する必要があることに注意してください。これは、GetProcesses() を使用して Process オブジェクトを取得した後に設定できます。

http://msdn.microsoft.com/en-us/library/system.diagnostics.process.exited.aspx

于 2013-08-07T16:04:38.750 に答える