EventLog.EntryWritten Ereignis

Definition

Tritt beim Schreiben eines Eintrags in das Ereignisprotokoll auf dem lokalen Computer ein.Occurs when an entry is written to an event log on the local computer.

public:
 event System::Diagnostics::EntryWrittenEventHandler ^ EntryWritten;
public event System.Diagnostics.EntryWrittenEventHandler EntryWritten;
member this.EntryWritten : System.Diagnostics.EntryWrittenEventHandler 
Public Custom Event EntryWritten As EntryWrittenEventHandler 

Beispiele

Im folgenden Beispiel wird ein Eintrags geschriebenes Ereignis behandelt.The following example handles an entry written event.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::Threading;
ref class MySample
{
private:

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

public:
   static void main()
   {
      signal = gcnew AutoResetEvent( false );
      EventLog^ myNewLog = gcnew EventLog;
      myNewLog->Source = "testEventLogEvent";
      myNewLog->EntryWritten += gcnew EntryWrittenEventHandler( MyOnEntryWritten );
      myNewLog->EnableRaisingEvents = true;
      myNewLog->WriteEntry("Test message", EventLogEntryType::Information);
      signal->WaitOne();
   }

   static void MyOnEntryWritten( Object^ /*source*/, EntryWrittenEventArgs^ /*e*/ )
   {
      Console::WriteLine("In event handler");
      signal->Set();
   }

};

int main()
{
   MySample::main();
}

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();
    }
}
   
Option Explicit On 
Option Strict On

Imports System.Diagnostics
Imports System.Threading


Class MySample

    ' This member is used to wait for events.
    Private Shared signal As AutoResetEvent


    Public Shared Sub Main()

        signal = New AutoResetEvent(False)
        Dim myNewLog As New EventLog("Application", ".", "testEventLogEvent")

        AddHandler myNewLog.EntryWritten, AddressOf MyOnEntryWritten
        myNewLog.EnableRaisingEvents = True
        myNewLog.WriteEntry("Test message", EventLogEntryType.Information)

        signal.WaitOne()
    End Sub


    Public Shared Sub MyOnEntryWritten(ByVal [source] As Object, ByVal e As EntryWrittenEventArgs)
        Console.WriteLine("In event handler")
        signal.Set()
    End Sub
End Class

Hinweise

Um Ereignis Benachrichtigungen zu erhalten, müssen Sie EnableRaisingEvents auf truefestlegen.To get event notifications, you must set EnableRaisingEvents to true. Ereignis Benachrichtigungen können nur empfangen werden, wenn Einträge auf dem lokalen Computer geschrieben werden.You can only receive event notifications when entries are written on the local computer. Benachrichtigungen für auf Remote Computern geschriebene Einträge können nicht empfangen werden.You cannot receive notifications for entries written on remote computers.

Beim Erstellen eines EntryWritten-Delegaten geben Sie die Methode für die Ereignisbehandlung an.When you create an EntryWritten delegate, you identify the method that will handle the event. Um dem Ereignishandler das Ereignis zuzuordnen, fügen Sie dem Ereignis eine Instanz des Delegaten hinzu.To associate the event with your event handler, add an instance of the delegate to the event. Der-Ereignishandler wird immer dann aufgerufen, wenn das-Ereignis auftritt, bis Sie den Delegaten entfernen.The event handler is called whenever the event occurs, until you remove the delegate. Weitere Informationen zur Behandlung von Ereignissen mit Delegaten finden Sie unter behandeln und Auswerfen von Ereignissen.For more information about handling events with delegates, see Handling and Raising Events.

Das System antwortet nur dann auf WriteEntry, wenn das letzte Schreib Ereignis mindestens sechs Sekunden lang aufgetreten ist.The system responds to WriteEntry only if the last write event occurred at least six seconds previously. Dies bedeutet, dass Sie nur eine EntryWritten Ereignis Benachrichtigung innerhalb eines Zeitraums von sechs Sekunden empfangen, auch wenn mehr als eine Änderung des Ereignis Protokolls auftritt.This implies you will only receive one EntryWritten event notification within a six-second interval, even if more than one event log change occurs. Wenn Sie ein ausreichend langes Ruheintervall (ca. 10 Sekunden) zwischen den Aufrufen von WriteEntryeinfügen, ist es weniger wahrscheinlich, dass Sie ein Ereignis übersehen.If you insert a sufficiently long sleep interval (around 10 seconds) between calls to WriteEntry, you are less likely to miss an event. Wenn Schreib Ereignisse jedoch häufiger auftreten, erhalten Sie die Ereignis Benachrichtigung möglicherweise erst im nächsten Intervall.However, if write events occur more frequently, you might not receive the event notification until the next interval. In der Regel werden Benachrichtigungen über verpasste Ereignisse nicht verloren gehen, sondern verzögert.Typically, missed event notifications are not lost, but delayed.

Sicherheit

EventLogPermission
zum Verwalten von Ereignisprotokoll Informationen auf dem Computer.for administering event log information on the computer. Zugehörige Enumeration: AdministerAssociated enumeration: Administer

Gilt für:

Siehe auch