事件日志代码错误无法找到事件源?

问题描述:

我想使用事件日志来写一些调试信息,我不能使它的工作。它抱怨无法找到事件源。我必须在操作系统上安装一些东西吗?事件日志代码错误无法找到事件源?

这里是我从我们的应用程序修改的代码。这可能会帮助您从创建开始。

System.Diagnostics.EventLog eventLog1 = new System.Diagnostics.EventLog(); 
string eventLogName = "StackOverFlowEventName"; 
string eventLogSource = "StackOverFlowWebsite"; 

//This code HERE will create the Event for you 
if (!System.Diagnostics.EventLog.SourceExists(eventLogSource)) 
{ 
    System.Diagnostics.EventLog.CreateEventSource(eventLogSource, eventLogName); 
} 

eventLog1.Source = eventLogSource; 
eventLog1.Log = eventLogName; 
eventLog1.WriteEntry("This is a test"); 
+0

只要记住,运行的创建事件的源代码行需要比需要简单地pnce它已经建立,以写入事件源略高权限。因此,如果这是在网站上,例如,您可能希望让部署包创建事件源4 u – 2008-11-14 20:18:32

您目前在您的项目中使用了哪些代码?我目前正在使用这一行来写入事件日志。

System.Diagnostics.EventLog.WriteEntry(assemblyName, "Error stuff", System.Diagnostics.EventLogEntryType.Error); 

当心不过,如果日志文件已满

您也可以直接转到在注册表中添加,使其工作所需的值,也可以在添加项目,这将抛出一个异常该解决方案只包含一个InstallerClass,当您运行它创建的exe时,它将为您创建EventLog条目。

MSDN Link
InstallerClass Link