Board logo

标题: 使用ASP .NET察看和清除你的事件日志 [打印本页]

作者: 野狼    时间: 2003-1-15 23:55     标题: 使用ASP .NET察看和清除你的事件日志

Jonathan Goodyear, MCSD, MCP, CLS 我正式宣布今天为“免费代码星期五“。今天我将向大家免费提供一个用ASP .NET实现的工具,它可以用来查看并清除Windows2000的事件日志。我把这个工具的源代码附在了文章的后面。在这之前,我将解释一下它的工作原理。你也可以下载这段源代码(包括VB和C#两个版本)。 当这页第一次被载入时,我们将创建并显示一个ASP .NET DropDownList服务器控件,它列出了本地服务器上所有的事件日志。我们首先通过调用EventLog类中的GetEventLogs方法得到所有的事件日志,再选择出属于本地服务器的事件日志,这样我们就得到了所需要的信息。当然,我们也可以指定网络上的另一台计算机,同样能得到它所用的事件日志。GetEventLogs方法将返回一个EventLog对象数组,这个数组已被我们绑定到了DropDownList服务器控件。 如果你从DropDownList控件中选择一个事件日志并点击“Get Log Entries“按钮,将触发getMessages_Click事件。这个事件调用我们定义的GetLogEntries函数,得到所指定的事件日志中所有事件的入口,并据此建立起EventLogEntry对象集。接着,这个对象集被绑定到服务器Repeater控件, 后者用一张HTML格式的表格显示每一个EventLogEntry对象的属性。最后,这个函数调用EventLog对象的Close方法结束这个事件。 还有一个“Clear Log Entries“按钮,它将触发clearLog_Click事件。在这个事件中,我们首先将连接到指定的事件日志,再调用EventLog对象的Clear方法,接着调用Close方法。最后,我们调用GetLogEntries函数来刷新服务器Repeater控件。请看屏幕截图 事件察看器的源代码 |下载源代码(包括VB和C#两个版本) == event_viewer_cs.aspx == <%@ Page Language="C#" %> <%@ Import Namespace="System.Diagnostics" %> Event Log Viewer
Type Date/Time Source Category Event User Computer Message
<%#GetEventTypeDesc( ((EventLogEntry)Container.DataItem).EntryType)%> <%#((EventLogEntry)Container.DataItem).TimeGenerated%> <%#((EventLogEntry)Container.DataItem).Source%> <%#((EventLogEntry)Container.DataItem).Category%> <%#((EventLogEntry)Container.DataItem).EventID%> <%#((EventLogEntry)Container.DataItem).UserName%> <%#((EventLogEntry)Container.DataItem).MachineName%> <%#((EventLogEntry)Container.DataItem).Message%>
== event_viewer_vb.aspx == <%@ Page Language="VB" %> <%@ Import Namespace="System.Diagnostics" %> Event Log Viewer
Type Date/Time Source Category Event User Computer Message
<%#GetEventTypeDesc(Container.DataItem.EntryType)%> <%#Container.DataItem.TimeGenerated%> <%#Container.DataItem.Source%> <%#Container.DataItem.Category%> <%#Container.DataItem.EventID%> <%#Container.DataItem.UserName%> <%#Container.DataItem.MachineName%> <%#Container.DataItem.Message%>





欢迎光临 黑色海岸线论坛 (http://bbs.thysea.com/) Powered by Discuz! 7.2