Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen.
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

EventLog.EntryWritten-Ereignis

Tritt beim Schreiben eines Eintrags in das Ereignisprotokoll auf dem lokalen Computer ein.

Namespace:  System.Diagnostics
Assembly:  System (in System.dll)
public event EntryWrittenEventHandler EntryWritten

Um Benachrichtigungen über Ereignisse abzurufen, müssen Sie EnableRaisingEvents auf true festlegen. Sie können Ereignisbenachrichtigungen nur empfangen, wenn Einträge auf dem lokalen Computer geschrieben werden. Sie können keine Benachrichtigungen über Einträge empfangen, die auf Remotecomputern geschrieben werden.

Beim Erstellen eines EntryWritten-Delegaten geben Sie die Methode für die Ereignisbehandlung an. Um das Ereignis dem Ereignishandler zuzuordnen, fügen Sie dem Ereignis eine Instanz des Delegaten hinzu. Der Ereignishandler wird bei jedem Auftreten des Ereignisses aufgerufen, bis Sie den Delegaten entfernen. Weitere Informationen zum Behandeln von Ereignissen mit Delegaten finden Sie unter Behandeln von Ereignissen.

Das System regiert nur dann auf WriteEntry, wenn das letzte Schreibereignis mindestens sechs Sekunden zurückliegt. Daher erhalten Sie innerhalb eines Intervalls von sechs Sekunden nur eine EntryWritten-Ereignisbenachrichtigung, selbst dann, wenn das Protokoll häufiger geändert wurde. Wenn Sie ein genügend langes Ruheintervall zwischen Aufrufen von WriteEntry einfügen (etwa 10 Sekunden), ist es weniger wahrscheinlich, dass Sie ein Ereignis nicht erfassen. Wenn Schreibereignisse jedoch häufiger auftreten, erhalten Sie die Ereignisbenachrichtigung möglicherweise erst im nächsten Intervall. Nicht erfasste Ereignisbenachrichtigungen gehen in der Regel nicht verloren, sondern werden verzögert angezeigt.

Im folgenden Beispiel wird ein Ereignis für das Schreiben eines Eintrags behandelt.


using System;
using System.Diagnostics;
using System.Threading;

class MySample{

    // This member is used to wait for events.
    static AutoResetEvent signal;

    public static void Main(){

        signal = new AutoResetEvent(false);
        EventLog myNewLog = new EventLog("Application", ".", "testEventLogEvent");                 

        myNewLog.EntryWritten += new EntryWrittenEventHandler(MyOnEntryWritten);
        myNewLog.EnableRaisingEvents = true;
        myNewLog.WriteEntry("Test message", EventLogEntryType.Information);
	    signal.WaitOne();        

    }       

    public static void MyOnEntryWritten(object source, EntryWrittenEventArgs e){
        Console.WriteLine("In event handler");
        signal.Set();
    }
}
   


.NET Framework

Unterstützt in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 oder höher, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core wird nicht unterstützt), Windows Server 2008 R2 (Server Core wird mit SP1 oder höher unterstützt), Windows Server 2003 SP2

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Community-Inhalt Hinzufügen
Anmerkungen FAQ