EventLogEntry.InstanceId Proprietà

Definizione

Ottiene l'identificatore di risorsa che definisce il testo del messaggio per la voce dell'evento.

public:
 property long InstanceId { long get(); };
public long InstanceId { get; }
[System.Runtime.InteropServices.ComVisible(false)]
public long InstanceId { get; }
member this.InstanceId : int64
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.InstanceId : int64
Public ReadOnly Property InstanceId As Long

Valore della proprietà

Identificatore di risorsa che corrisponde alla definizione di una stringa nel file di risorse del messaggio dell'origine eventi.

Attributi

Esempio

Nell'esempio di codice seguente viene ricercato un registro eventi per le voci con un particolare identificatore di risorsa. Nell'esempio di codice viene visualizzato il messaggio di evento per ogni voce corrispondente e viene conteggiato il numero totale di voci corrispondenti nel log. Il testo del messaggio per ogni voce può o meno essere lo stesso; ogni messaggio di evento dipende dal file del messaggio di origine evento, dalle stringhe di inserimento e dai parametri usati quando è stato scritto.


// Get the event log corresponding to the existing source.
String^ myLogName = EventLog::LogNameFromSourceName( sourceName, "." );

// Find each instance of a specific event log entry in a
// particular event log.
EventLog^ myEventLog = gcnew EventLog( myLogName,"." );
int count = 0;
Console::WriteLine( "Searching event log entries for the event ID {0}...", ServerConnectionDownMsgId );

// Search for the resource ID, display the event text,
// and display the number of matching entries.
System::Collections::IEnumerator^ myEnum = myEventLog->Entries->GetEnumerator();
while ( myEnum->MoveNext() )
{
   EventLogEntry^ entry = safe_cast<EventLogEntry^>(myEnum->Current);
   if ( entry->InstanceId == ServerConnectionDownMsgId )
   {
      count++;
      Console::WriteLine();
      Console::WriteLine( "Entry ID    = {0}", entry->InstanceId );
      Console::WriteLine( "Reported at {0}", entry->TimeWritten );
      Console::WriteLine( "Message text:" );
      Console::WriteLine( "\t{0}", entry->Message );
   }
}

Console::WriteLine();
Console::WriteLine( "Found {0} events with ID {1} in event log {2}.", count, ServerConnectionDownMsgId, myLogName );
// Get the event log corresponding to the existing source.
string myLogName = EventLog.LogNameFromSourceName(sourceName,".");

// Find each instance of a specific event log entry in a
// particular event log.

EventLog myEventLog = new EventLog(myLogName, ".");
int count = 0;

Console.WriteLine("Searching event log entries for the event ID {0}...",
    ServerConnectionDownMsgId.ToString());

// Search for the resource ID, display the event text,
// and display the number of matching entries.

foreach(EventLogEntry entry in myEventLog.Entries)
{
    if (entry.InstanceId == ServerConnectionDownMsgId)
    {
        count ++;
        Console.WriteLine();
        Console.WriteLine("Entry ID    = {0}",
            entry.InstanceId.ToString());
        Console.WriteLine("Reported at {0}",
            entry.TimeWritten.ToString());
        Console.WriteLine("Message text:");
        Console.WriteLine("\t{0}", entry.Message);
    }
}
Console.WriteLine();
Console.WriteLine("Found {0} events with ID {1} in event log {2}.",
    count.ToString(), ServerConnectionDownMsgId.ToString(), myLogName);
    ' Get the event log corresponding to the existing source.
    Dim myLogName As String = EventLog.LogNameFromSourceName(sourceName,".")

    ' Find each instance of a specific event log entry in a
    ' particular event log.

    Dim myEventLog As EventLog = new EventLog(myLogName, ".", sourceName)
    Dim count As Integer = 0

    Console.WriteLine("Searching event log entries for the event ID {0}...", _
       ServerConnectionDownMsgId.ToString())
    
    ' Search for the resource ID, display the event text,
    ' and display the number of matching entries.

    Dim entry As EventLogEntry
    For Each entry In  myEventLog.Entries
        If entry.InstanceId = ServerConnectionDownMsgId
            count = count + 1
            Console.WriteLine()
            Console.WriteLine("Entry ID    = {0}", _
                entry.InstanceId.ToString())
            Console.WriteLine("Reported at {0}", _
                entry.TimeWritten.ToString())
            Console.WriteLine("Message text:")
            Console.WriteLine(ControlChars.Tab + entry.Message)
        End If
    Next entry

    Console.WriteLine()
    Console.WriteLine("Found {0} events with ID {1} in event log {2}", _
        count.ToString(), ServerConnectionDownMsgId.ToString(), myLogName)

Commenti

La InstanceId proprietà identifica in modo univoco una voce di evento per un'origine evento configurata. Per InstanceId una voce del registro eventi rappresenta l'identificatore completo della risorsa a 32 bit per l'evento nel file di risorse del messaggio per l'origine evento. La EventID proprietà è uguale a InstanceId con i primi due bit mascherati. Due voci del registro eventi della stessa origine possono avere valori corrispondenti EventID , ma hanno valori diversi InstanceId a causa delle differenze tra i due bit principali dell'identificatore di risorsa.

Se l'applicazione ha scritto la voce dell'evento usando uno dei WriteEntry metodi, la InstanceId proprietà corrisponde al parametro facoltativo eventId . Se l'applicazione ha scritto l'evento usando WriteEvent, la InstanceId proprietà corrisponde all'identificatore di instance risorsa specificato nel InstanceId parametro . Se l'applicazione ha scritto l'evento usando l'API ReportEventWindows , la InstanceId proprietà corrisponde all'identificatore di risorsa specificato nel dwEventID parametro.

Per informazioni dettagliate sulla definizione di messaggi di evento e sulla creazione di file di risorse del log eventi, vedere l'articolo Del compilatore di messaggi nella documentazione di Platform SDK. Per informazioni dettagliate sugli identificatori del log eventi, vedere l'articolo Identificatori eventi nella documentazione di Platform SDK.

Si applica a

Vedi anche