可以试一下EventLog.EntryWritten 事件 
若要获取事件通知,必须将 EnableRaisingEvents 设置为 true。只有在本地计算机上写入项时,才能接收事件通知。无法接收在远程计算机上写入项时的通知。 创建 EntryWritten 委托时,标识将处理事件的方法。若要使该事件与事件处理程序相关联,请将该委托的一个实例添加到事件中。每当事件出现时就调用事件处理程序,直到移除该委托。有关用委托处理事件的更多信息,请参见 使用事件。 仅当上一个写入事件至少在六秒种之前发生时,系统才响应 WriteEntry。这意味着即使发生了多个事件日志更改,在六秒钟的间隔内您也只会接收到一个 EntryWritten 事件通知。如果在对 WriteEntry 的两次调用之间插入足够长的休眠间隔(大约 10 秒),则错过事件的可能性就会降低。然而,如果写入事件的发生频率更高,则在下次间隔到来之前您可能不会收到事件通知。通常,错过的事件通知并未丢失,而是被延迟了。 
C# code
using System;
using System.Diagnostics;
using System.Threading;class MySample{    // This member is used to wait for events.
    static AutoResetEvent signal;    public static void Main(){    
        EventLog myNewLog = new EventLog();
        myNewLog.Log = "MyCustomLog";                              myNewLog.EntryWritten += new EntryWrittenEventHandler(MyOnEntryWritten);
        myNewLog.EnableRaisingEvents = true;
    signal = new AutoResetEvent(false);
    signal.WaitOne();            }           public static void MyOnEntryWritten(object source, EntryWrittenEventArgs e){
        signal.Set();
    }
}MSDN上面查到的,现在想实时监控系统事件日志,每产生一条事件日志就显示一条信息出来。

解决方案 »

  1.   

    http://download.csdn.net/source/800446http://rookieport.yourblog.org/logs/126034.html
      

  2.   

    select * from __instancecreationevent WITHIN 100 where TargetInstance isa
    'Win32_NTLogEvent' and TargetInstance.LogFile = 'xxxxx' 
      

  3.   

    windows系统有一个事件查看器。现在想实时读取系统事件日志里面的内容。。
      

  4.   

    用WMI可以监控windows平台的大部分资源,包括事件日志。
      

  5.   

    WMI
    只有使用底层的东西了阿
      

  6.   

    WMI订阅系统日志
    ConnectionOptions options = new ConnectionOptions();
    options.Username = username;
    options.Password = password;
    options.Impersonation = ImpersonationLevel.Impersonate;ManagementEventWatcher watcher = new ManagementEventWatcher();
    WqlEventQuery query = new WqlEventQuery("__InstanceCreationEvent", new TimeSpan(0, 0, 1), "TargetInstance isa \"Win32_NTLogEvent\" and TargetInstance.Logfile = \"Security\"");
    watcher.Query = query;
    watcher.Scope = new ManagementScope("\\\\远程电脑IP地址\\root\\cimv2", options);
    ManagementBaseObject ea = watcher.WaitForNextEvent();string EventCode = "EventCode:" + ((ManagementBaseObject)ea["TargetInstance"])["EventCode"];
      

  7.   

    来接点分,AAAAAAAAAAAAAAAAAAAAAAA
      

  8.   

    可惜我还是个菜鸟,不能帮你解决问题不过也顶下 AAAAAAAAAAAA