我使用以下方法创建了一个事件日志源:
if (!EventLog.SourceExists(EventLogSource)) EventLog.CreateEventSource(EventLogSource);
因此,使用 EventLogSource 的每个日志条目都会进入“应用程序”。然后我希望所有使用 EventLogSource 的条目进入另一个自定义日志;所以我删除了它们,然后使用新的自定义日志创建了源:
try { EventLog.DeleteEventSource(EventLogSource); }
catch { }
try { EventLog.Delete(EventLogName); }
catch { }
...
if (!EventLog.SourceExists(EventLogSource)) EventLog.CreateEventSource(EventLogSource, EventLogName);
while (!EventLog.SourceExists(EventLogSource)) { }
但是当我使用 EventLogSource 登录时,条目仍然会进入“应用程序”而不是 EventLogName。
笔记:
我在评论中写了这个,我认为它有助于更好地描述我的问题:在 Windows 事件查看器中,您会看到“Windows 日志”和“应用程序”在其下。树中有另一个名为“应用程序和服务日志”的节点,我想在该节点下创建一个自定义日志。我可以成功地做到这一点。问题是以前注册到“应用程序”的事件源无法从“应用程序”中取消注册并在我自己的“MyCustomLog”中重新注册。