首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

求高人,如何读取事件查看器中的数据?多谢指点

2012-08-17 
求高人,怎么读取事件查看器中的数据???谢谢指点怎么将事件查看器中的关于应用程序日志,安全日志以及系统日

求高人,怎么读取事件查看器中的数据???谢谢指点
怎么将事件查看器中的关于应用程序日志,安全日志以及系统日志读取到数据库,给个大致的思路,有部分代码最好。谢谢指点~~~做系统要用的……

[解决办法]
用EventLog类
[解决办法]

C# code
System.Diagnostics.EventLog el = new System.Diagnostics.EventLog();            el.Log = "Application"; //or System, Security            el.Source = "TestApplication";            el.WriteEntry("this is a test", System.Diagnostics.EventLogEntryType.Error);
[解决办法]
从日志里读取信息,需要使用的是EventLog的Entries方法,该方法返回的是一个集合类EventLogEntryCollection的实例,在该集合类中储存的是EventLogEntry类的实例,该类中存储了日志里各记录的信息。可以用以下的程序来返回日志信息。
  
首先,要实例化一个EventLog类
  
EventLog sample=new EventLog();
  
和写入信息不同的是,我们在这需要指定从那个日志里读记录
  
sample.Log="Application";
  
指定的是应用程序日志,当然,可以选择别的日志,比如系统日志System,还有安全日志Security
  
声明一个EventLogEntryCollection类并给它赋值
  
EventLogEntryCollection myCollection=sample.Entries;
  
这样,应用程序日志里的信息都存放在了myCollection对象中,我们可以来读取其中的信息。
  
用foreach语句来访问myCollection中的所有EventLogEntry对象
  
  
  
  
  
foreach(EventLogEntry test in myCollection)
  
{
  
Console.WriteLine(test.Message,test.Source,test.EventID);
  
}

热点排行