EventLog.EntryWritten EventLog.EntryWritten EventLog.EntryWritten EventLog.EntryWritten Event

Definizione

Si verifica quando viene scritta una voce in un registro eventi del computer locale.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 

Esempi

L'esempio seguente gestisce un'evento scritto della voce.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
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 ' Main


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

Commenti

Per ottenere le notifiche degli eventi, è necessario impostare EnableRaisingEvents a true.To get event notifications, you must set EnableRaisingEvents to true. È possibile ricevere le notifiche degli eventi solo quando le voci vengono scritte nel computer locale.You can only receive event notifications when entries are written on the local computer. Non è possibile ricevere le notifiche per le voci scritte nei computer remoti.You cannot receive notifications for entries written on remote computers.

Quando si crea un delegato di EntryWritten, si identifica il metodo con cui gestire l'evento.When you create an EntryWritten delegate, you identify the method that will handle the event. Per associare l'evento al gestore eventi in uso, aggiungere all'evento un'istanza del delegato.To associate the event with your event handler, add an instance of the delegate to the event. Il gestore eventi viene chiamato ogni volta che si verifica l'evento, fino a quando non viene rimosso il delegato.The event handler is called whenever the event occurs, until you remove the delegate. Per altre informazioni sulla gestione degli eventi con i delegati, vedere la gestione e generazione di eventi.For more information about handling events with delegates, see Handling and Raising Events.

Il sistema risponde a WriteEntry solo se l'ultimo evento di scrittura si è verificato almeno sei secondi.The system responds to WriteEntry only if the last write event occurred at least six seconds previously. Ciò implica si riceverà solo uno EntryWritten notifica degli eventi all'interno di un intervallo di sei secondi, anche se cambia l'accesso più di un evento si verifica.This implies you will only receive one EntryWritten event notification within a six-second interval, even if more than one event log change occurs. Se si inserisce un intervallo di inattività sufficientemente lungo (circa 10 secondi) tra le chiamate a WriteEntry, riduce la probabilità di perdita di un evento.If you insert a sufficiently long sleep interval (around 10 seconds) between calls to WriteEntry, you are less likely to miss an event. Tuttavia, se gli eventi di scrittura si verificano più spesso, si potrebbe non ricevere la notifica degli eventi fino all'intervallo successivo.However, if write events occur more frequently, you might not receive the event notification until the next interval. In genere, le notifiche degli eventi mancanti non vengono persi, ma ritardati.Typically, missed event notifications are not lost, but delayed.

Sicurezza

EventLogPermission
per l'amministrazione di informazioni del registro eventi nel computer.for administering event log information on the computer. Enumerazione associata: AdministerAssociated enumeration: Administer

Si applica a

Vedi anche