EventLog - 获取可用日志

jde*_*per 9 c# asp.net event-log

使用以下代码,我可以显示"应用程序"日志下列出的所有条目:

EventLog appLog = new EventLog();
appLog.Log = "Application";
appLog.MachineName = ".";  

foreach (EventLogEntry entry in appLog.Entries)
{
 // process
}  
Run Code Online (Sandbox Code Playgroud)

由于我没有FTP o RDP访问服务器,有没有办法获取所有可用日志的列表,在"应用程序"旁边?某些日志是标准的,但新的可以由用户/应用程序添加.

Kre*_*epN 10

跑:

var d = EventLog.GetEventLogs();
        foreach(EventLog l in d)
        {
            Console.WriteLine(l.LogDisplayName);
        }
Run Code Online (Sandbox Code Playgroud)

如果你想看到所有的名字.它们存储在一个数组中.

编辑: 按照你设置的方式工作:

var d = EventLog.GetEventLogs();
        foreach(EventLog l in d)
        {
            foreach (EventLogEntry entry in l.Entries)
            {
                // process
            }  
        }
Run Code Online (Sandbox Code Playgroud)


Yah*_*hia 5

是 - 使用静态方法EventLog.GetEventLogs...请注意,这需要适当的权限...有关详细信息和示例代码,请参阅http://msdn.microsoft.com/en-us/library/ht0k516y.aspx