其中WriteEntry方法的第一個參數指定的信息通過雙擊相應的日志可以查看,如下圖所示。
在默認情況下,EventLog類將日志寫在Application事件裡,通過EventLog的構造方法的參數也可以指定其他的日志,如系統(System)事件,但要注意在向非Application事件寫日志信息時,需要先使用CreateEventSource方法將事件源添加到當前事件中。下面的例子演示了如何向“系統”事件中添加日志信息:
EventLog log = new EventLog("System");
// 首先應判斷日志來源是否存在,一個日志來源只能同時與一個事件綁定s
if(!EventLog.SourceExists("My Application"))
EventLog.CreateEventSource("My Application", "System");
try
{
log.Source = "My Application";
log.WriteEntry("處理信息1", EventLogEntryType.Information);
log.WriteEntry("處理信息2", EventLogEntryType.Information);
throw new System.IO.FileNotFoundException("readme.txt文件未找到");
}
catch (System.IO.FileNotFoundException exception)
{
log.WriteEntry(exception.Message, EventLogEntryType.Error);
}
在執行上面的代碼後,向System事件寫入的日志如下圖所示。
我們也可以通過EventLog類的添加自己的事件,代碼如下:
EventLog log = new EventLog("MyEvent");
// 首先應判斷日志來源是否存在,一個日志來源只能同時與一個事件綁定s
if(!EventLog.SourceExists("New Application"))
EventLog.CreateEventSource("New Application", "MyEvent");
try
{
log.Source = "New Applications";
log.WriteEntry("處理信息1", EventLogEntryType.Information);
log.WriteEntry("處理信息2", EventLogEntryType.Information);
throw new System.IO.FileNotFoundException("readme.txt文件未找到");
}
catch (System.IO.FileNotFoundException exception)
{
log.WriteEntry(exception.Message, EventLogEntryType.Error);
}