从C#中的eventviewer读取日志

时间:2015-06-02 07:11:45

标签: c# event-viewer

我想从事件查看器文件夹中读取日志,这些文件夹位于"应用程序和服务日志"但我无法在C#中找到这些文件夹。

以下是我的代码:

if (EventLog.Exists("MyApp-Folder1-Folder2/General"))
{
    EventLog log = new EventLog("MyApp-Folder1-Folder2/General");
    log.EntryWritten += new EntryWrittenEventHandler(OnEntryWritten);
    log.EnableRaisingEvents = true; 
}

如果找到日志,我想在该文件夹上设置观察者。上面的路径存在于"应用程序和服务日志"但仍然是EventLog.Exists()返回false。

如何在C#中阅读此类日志?

1 个答案:

答案 0 :(得分:0)

不确定您正在使用哪种操作系统,但在我的Windown 8上,您可以在以下目录中找到日志:

  

C:\ Windows \ System32下\ winevt \日志

你有.evtx扩展名。 问题是:

  

EVTX文件是可以使用事件查看器查看的Microsoft事件查看器日志。要在按下R的同时启动事件查看器按住Windows按钮,然后在“运行”窗口中键入eventvwr.msc。

我不确定你是否可以直接阅读它们。似乎你可以导出它们,但如果我理解正确的话,这不是你想要的。