【问题标题】:EventLog logs in Application, even though set to another log应用程序中的 EventLog 日志,即使设置为另一个日志
【发布时间】:2015-06-29 11:52:53
【问题描述】:

我在我的应用程序中创建了一个EventLog 对象,我用它来记录我自己的日志,创建方式如下:

if (!System.Diagnostics.EventLog.SourceExists("MyApplication")) {
    System.Diagnostics.EventLog.CreateEventSource(
           "MySource", "MyApplication");
}
eventLog.Source = "MySource";
eventLog.Log = "MyApplication";

我记录这样的条目:

eventLog.WriteEntry("some log line");

检查eventLog 对象时,它说Log 设置为"MyApplication"。但是,日志记录总是转到 Windows 应用程序日志。我还必须说,在我将另一个源注册到同一日志之前,该代码一直有效。该“新”源正确记录。

更新查看注册表时,源已正确创建(作为日志的子项)

可能出了什么问题?

【问题讨论】:

  • 你写的是什么样的?
  • @jdweng 我更新了我的问题。

标签: c# windows event-log


【解决方案1】:

查看EventLog.CreateEventSource is not creating a custom log,您是否尝试过重新启动计算机?可能是事件日志没有正确注册您的源。

另外,需要创建源,确保您以管理员身份运行程序,否则将无法运行。

【讨论】:

  • 就是这样。我应该知道,当它不起作用时,重新启动。我很惊讶微软是如何将日志这样简单的事情变得如此复杂的。
  • 遇到了同样的问题。记录的项目出现在 Windows 应用程序日志中。一旦计算机重新启动,在重新启动之前写入的项目就会出现在正确的日志中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-03-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多