Frage

Ich versuche, das Ereignisprotokoll zu verwenden, um einige Debug-Informationen zu schreiben, und ich kann es funktioniert nicht machen. Es beschwert sich über nicht die Ereignisquelle finden zu können. Muss ich etwas auf dem OS installieren?

War es hilfreich?

Lösung

Hier ist ein Code, den ich von einem unserer Anwendung modifiziert. Dies könnte helfen Ihnen bei der Erstellung zu beginnen.

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");

Andere Tipps

Was Code verwenden Sie in Ihrem Projekt? Ich verwende derzeit diese Zeile in das Ereignisprotokoll zu schreiben.

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

Sehen Sie zwar heraus, das eine Ausnahme auslösen, wenn die Protokolldatei voll ist

Sie können auch direkt in der Registrierung gehen und die Werte hinzufügen erforderlich, damit es funktioniert, oder Sie können ein Projekt in der Lösung hinzugefügt, die nur ein Installer enthalten, die den Event-Log-Eintrag für Sie erstellen, wenn Sie die exe es laufen erstellt.

MSDN Link-
Installer Link-

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top