我的Windows服务写入事件日志,但我有各种各样的问题得到这个正确的。所以在这个过程中我使用了许多不同的名字。我跟着一篇描述如何在Windows服务中设置事件日志的文章。所以在设计中添加EventLog组件后,我已经加入这个构造:我可以列出所有注册的事件源吗?
if (!System.Diagnostics.EventLog.SourceExists("AS0604"))
System.Diagnostics.EventLog.CreateEventSource("AS0604", "SIRR");
eventLog1.Source = "AS0604";
eventLog1.Log = "SIRR";
eventLog1.WriteEntry("AS is initializing...", EventLogEntryType.Information, 16);
我发现有麻烦,如果源具有相同的名称作为Windows服务的服务名称。但我不断为Log和Source更改名称。
EventLog[] eventLogs = EventLog.GetEventLogs();
列出事件日志,我能够删除那些我没有使用EventLog.Delete命令。
但这是如何工作的?这些被删除的日志中是否还有注册的来源?我可以获得已注册来源的清单吗?
这个答案的链接仅是。请编辑答案以包含必要的信息;链接可能会在某个时候死亡。 (小心不要抄袭。) – jpmc26 2017-08-01 20:10:22