EventLog 编程结构
更新:2007 年 11 月
EventLog 组件使用 .NET Framework 命名空间的以下部分:
EventLog 命名空间
在 Visual Studio 中,当向应用程序添加 EventLog 组件的一个实例时,系统会自动创建访问命名空间和类所需的引用和导入语句。不过,如果您正在代码中或 Microsoft .NET Framework 中创建 EventLog 组件,则可能需要创建对 System.Diagnostics 的引用,并向项目添加一条导入同一库的语句。
有关添加和移除项目引用的说明,请参见如何:在 Visual Studio 中添加或移除引用 (Visual Basic)。
EventLog 类中重要的编程元素
只要有项写入您正监视的日志,EventLog 组件就会引发一个名为 EntryWritten 的事件。可以为此事件定义一个处理程序。另外,可以用下列方法与 EventLog 组件的实例进行交互:
可以用 Exists 方法来确定某一特定事件日志是否存在。
可以用 CreateEventSource 方法定义一个用来在事件源和日志之间创建关系的字符串,并用 DeleteEventSource 方法移除此关联。还可以用此方法创建新的自定义事件日志。只须输入一个新的日志名称作为您想在其中创建源的日志,系统会自动创建此日志。
说明: 可以将 Source 属性设置为任何字符串;它不必与应用程序的名称相对应。单个应用程序可以包含多个组件,这些组件使用不同的源字符串向事件日志进行自我标识。
可以使用 WriteEntry 方法向您可以访问的任何事件日志写入事件信息。如果您的组件或应用程序还没有注册到指定的日志,WriteEntry 方法会自动将它作为有效源进行注册。
可以使用 SourceExists 方法确定某一特定源是否已注册。在给定计算机上尝试创建新源时,这会很有帮助,因为如果该源已在此计算机上注册,SourceExists 方法将导致一个运行时错误。
可以使用 GetEventLogs 方法检索特定计算机上所有事件日志的列表。
可以使用 Delete 方法删除整个事件日志。使用此方法时要小心,因为删除一个日志会将任何在其中注册的源也都删除。