WMI Entry Arrived Event访问事件ID

时间:2012-01-13 10:22:31

标签: wmi event-log

当我使用WMI监视事件日志时,尝试获取事件ID时遇到一个小问题。这是我的代码:

private static void EventLogMonitor(object sender, EventArrivedEventArgs e)
{
    int realEventId = (int)(e.NewEvent.Properties["EventID"].Value);
    ...

但它没有为我拿起事件ID,只是抛出异常。有没有人知道应该在上面的代码行中代替“EventID”,以便我可以访问触发此处理程序的事件日志条目写入事件的事件ID?

1 个答案:

答案 0 :(得分:0)

我发现了如何做到这一点,因为在这里发现这个有用的任何人都是代码:

private static void EventLogMonitor(object sender, EventArrivedEventArgs e)
{
    ManagementBaseObject targetInstance = (ManagementBaseObject)e.NewEvent
                                                  .GetPropertyValue("TargetInstance");
    UInt16 EventId = (UInt16)(targetInstance.GetPropertyValue("EventCode"));