イベントビューアの[詳細]タブにある情報にアクセスしようとしています。
TaskSchedulerイベントは、System.Diagnostics.EventLogではなく、System.Diagnostics.Eventingを介して利用できることに気付きました。
これまでのところ私はこれを持っています:
var query = new EventLogQuery("Microsoft-Windows-TaskScheduler/Operational", PathType.LogName);
var reader = new EventLogReader(query);
var eventRec = reader.ReadEvent();
しかし、返されたオブジェクトのどこにもEventDataが見つかりません。
この情報(GUIDは削除されています)、具体的には「EventData->TaskName」を見つけようとしています。
< Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
< System>
< Provider Name="Microsoft-Windows-TaskScheduler" Guid="...." />
< EventID>110</EventID>
< Version>0</Version>
< Level>4</Level>
< Task>110</Task>
< Opcode>0</Opcode>
< Keywords>0x8000000000000000</Keywords>
< TimeCreated SystemTime="2011-12-21T17:51:13.029864700Z" />
< EventRecordID>203307</EventRecordID>
< Correlation ActivityID="{090...440}" />
< Execution ProcessID="996" ThreadID="9932" />
< Channel>Microsoft-Windows-TaskScheduler/Operational</Channel>
< Computer>....</Computer>
< Security UserID="S-1-5-18" />
< /System>
< EventData Name="TaskRunEvent">
**< Data Name="TaskName">\testTask</Data>**
< Data Name="InstanceId">{090...440}</Data>
< Data Name="UserContext">cussonsh</Data>
< /EventData> < /Event>