如何:确定特定事件日志是否存在

更新:2007 年 11 月

可以使用 Exists 方法确定某特定日志是否存在。如果该日志存在,此方法将返回 true。如果要创建一个自定义日志并想确知尚不存在有此名称的日志,可使用此方法。

您必须有注册权限才可以查看某个日志是否存在。如果您没有适当的权限,查询将总是返回 false。有关设置注册权限的信息,请参见 Windows 文档。

Exists 方法外,还可以使用一个类似的方法,即 SourceExists 方法,来确定某特定源字符串是否存在。有关更多信息,请参见 如何:确定事件源是否存在

说明:

由于 ExistsSourceExists 方法是 Shared 的,因此,在调用其中任何一个方法之前,不需要创建 EventLog 组件的实例,而是可以直接调用 EventLog 类自身的方法。

必须在远程计算机上具有适当的访问权限才能创建和删除日志。有关更多信息,请参见 事件日志的安全性细节

确定一个事件日志是否存在

  • 调用 Exists 方法,并指定本地计算机上您要验证的日志作为参数。

    下面的示例演示如何确定本地计算机上是否存在 Application 日志。此代码假设对应 System.Diagnostics 命名空间存在一个 Imports 或 using 语句:

    Dim logExists As Boolean
    logExists = EventLog.Exists("Application")
    
         bool logExists = System.Diagnostics.EventLog.Exists("Application");
    

    如果该日志存在,消息框中将显示“True”。如果它不存在,消息框中将显示“False”。

    提示:

    可以将计算机名称指定为第二个参数,以确定远程计算机上是否存在事件日志。

    说明:

    Application 区分大小写。

请参见

任务

如何:创建和移除自定义事件日志

演练:浏览事件日志、事件源和项

概念

事件日志的安全性细节

其他资源

管理事件日志