2012-01-12 1 views
0

を監視するために、WMIを使用した:私はEntryWrittenイベントのイベントログを監視するためにWMIを使用しようとしていますので、以下のように、私はハンドラを設定イベントログ

// Create the event log monitor 
     string query = "Select * From __InstanceCreationEvent Where TargetInstance.LogFile='Application'"; 
     WqlEventQuery aProcessCreationQuery = new WqlEventQuery(query); 
     ManagementEventWatcher aWatcher = new ManagementEventWatcher(aProcessCreationQuery); 
     aWatcher.EventArrived += new EventArrivedEventHandler(EventLogMonitor); 

しかし発射したことがないEventLogMonitor私のハンドラメソッド、場合でも、アプリケーションイベントログに内容が書き込まれています。私のアプリケーションは、イベントログに書き込まれたもののサービス監視として実行されます。

私は行を追加する必要があるかもしれないことをどこかで見つかった:をStartService()メソッドで

aWatcher.Start() 

を、私はサービスを行う場合には文句を言わない開始。誰かがこれについて何か考えているのだろうか?

答えて

3

あなたWQLのsenenceはあなたがそう

Select * From __InstanceCreationEvent WHERE TargetInstance ISA 'Win32_NTLogEvent' and TargetInstance.LogFile='Application'

よう ISAキーワード

何かを使用して文に検査されたクラスが含まれている必要がありSelect * From __InstanceCreationEvent Where TargetInstance.LogFile='Application'

間違っています

関連する問題