在 C# 中访问嵌套事件日志
Access nested event log in C#
我正在尝试使用 EventLog
获取与打印机相关的日志。
我已经枚举了系统中的所有日志,使用来自 的提示,像这样:
foreach (var e in EventLogSession.GlobalSession.GetLogNames()) {
Console.WriteLine(e);
}
我得到了所需日志的日志名称 - Microsoft-Windows-PrintService/Operational
。
但是,这段代码崩溃了:
var evt = new EventLog("Microsoft-Windows-PrintService/Operational");
与
An unhandled exception of type 'System.InvalidOperationException' occurred in System.dll
Additional information: The event log 'Microsoft-Windows-PrintService/Operational' on computer '.' does not exist.
我是 运行 MSVC 2015 管理员。
new EventLog("Application");
工作得很好,如何创建自定义嵌套事件日志?
如果您只想阅读事件,可以尝试 EventReader
class:
var printerServiceQuery = new EventLogQuery("Microsoft-Windows-PrintService/Operational", PathType.LogName);
var reader = new EventLogReader(printerServiceQuery);
EventRecord entry = null;
while( (entry = reader.ReadEvent()) != null)
{
Console.WriteLine(entry.FormatDescription());
}
我正在尝试使用 EventLog
获取与打印机相关的日志。
我已经枚举了系统中的所有日志,使用来自
foreach (var e in EventLogSession.GlobalSession.GetLogNames()) {
Console.WriteLine(e);
}
我得到了所需日志的日志名称 - Microsoft-Windows-PrintService/Operational
。
但是,这段代码崩溃了:
var evt = new EventLog("Microsoft-Windows-PrintService/Operational");
与
An unhandled exception of type 'System.InvalidOperationException' occurred in System.dll
Additional information: The event log 'Microsoft-Windows-PrintService/Operational' on computer '.' does not exist.
我是 运行 MSVC 2015 管理员。
new EventLog("Application");
工作得很好,如何创建自定义嵌套事件日志?
如果您只想阅读事件,可以尝试 EventReader
class:
var printerServiceQuery = new EventLogQuery("Microsoft-Windows-PrintService/Operational", PathType.LogName);
var reader = new EventLogReader(printerServiceQuery);
EventRecord entry = null;
while( (entry = reader.ReadEvent()) != null)
{
Console.WriteLine(entry.FormatDescription());
}