Ich bin mit dem folgenden Code ein benutzerdefinierten Ereignisprotokoll in meiner Windows-Dienst-Anwendung zu erstellen:Fehler beim Schreiben in das Ereignisprotokoll, verhindert, dass der Windows-Dienst gestartet wird?
public ServiceConstructor()
{
InitializeComponent();
if (!EventLog.SourceExists("WinService"))
{
EventLog.CreateEventSource("WinService", "WinServiceLog");
eventLog1.Source = "WinService";
eventLog1.Log = "WinServiceLog";
}
}
protected override void OnStart(string[] args)
{
eventLog1.WriteEntry("Started");
}
Nach dem Service.msi installieren, wenn ich den Dienst begann es gestartet und gestoppt dann. Dann fand ich den folgenden Fehler im EventViewer Windows Log Abschnitt:
Der Dienst kann nicht gestartet werden. System.ArgumentException: Die Quelleigenschaft wurde nicht vor dem Schreiben von in das Ereignisprotokoll festgelegt.
at System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType type, Int32 eventID, Int16 category, Byte[] rawData) at System.Diagnostics.EventLog.WriteEntry(String message) at WinService.Service.OnStart(String[] args) at System.ServiceProcess.ServiceBase.ServiceQueuedMainCallback(Object state)