Share via


EventLogEntry.InstanceId Eigenschaft

Definition

Ruft den Ressourcenbezeichner ab, der den Nachrichtentext des Ereigniseintrags bezeichnet.

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

Eigenschaftswert

Ein Ressourcenbezeichner, der mit einer Zeichenfolgendefinition in der Meldungsressourcendatei der Ereignisquelle übereinstimmt.

Attribute

Beispiele

Im folgenden Codebeispiel wird ein Ereignisprotokoll nach Einträgen mit einem bestimmten Ressourcenbezeichner durchsucht. Im Codebeispiel wird die Ereignismeldung für jeden übereinstimmenden Eintrag angezeigt und die Gesamtzahl der übereinstimmenden Einträge im Protokoll gezählt. Der Nachrichtentext für jeden Eintrag kann identisch sein oder nicht. Jede Ereignisnachricht hängt von der Nachrichtendatei der Ereignisquelle, den Einfügezeichenfolgen und den Parametern ab, die beim Schreiben verwendet wurden.


// 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)

Hinweise

Die InstanceId -Eigenschaft identifiziert eindeutig einen Ereigniseintrag für eine konfigurierte Ereignisquelle. Der InstanceId für einen Ereignisprotokolleintrag stellt den vollständigen 32-Bit-Ressourcenbezeichner für das Ereignis in der Nachrichtenressourcendatei für die Ereignisquelle dar. Die EventID -Eigenschaft entspricht dem InstanceId , wobei die beiden obersten Bits maskiert sind. Zwei Ereignisprotokolleinträge aus derselben Quelle können übereinstimmende EventID Werte aufweisen, aber aufgrund von Unterschieden in den beiden obersten Bits des Ressourcenbezeichners unterschiedliche InstanceId Werte aufweisen.

Wenn die Anwendung den Ereigniseintrag mit einer der WriteEntry Methoden geschrieben hat, entspricht die InstanceId -Eigenschaft dem optionalen eventId Parameter. Wenn die Anwendung das Ereignis mit WriteEventgeschrieben hat, entspricht die InstanceId -Eigenschaft dem Ressourcenbezeichner, der instanceInstanceId im -Parameter angegeben ist. Wenn die Anwendung das Ereignis mithilfe der Windows-API ReportEventgeschrieben hat, entspricht die InstanceId Eigenschaft dem im dwEventID Parameter angegebenen Ressourcenbezeichner.

Ausführliche Informationen zum Definieren von Ereignismeldungen und zum Erstellen von Ereignisprotokollressourcendateien finden Sie im Artikel Nachrichtencompiler in der Platform SDK-Dokumentation. Ausführliche Informationen zu Ereignisprotokollbezeichnern finden Sie im Artikel Ereignisbezeichner in der Platform SDK-Dokumentation.

Gilt für:

Weitere Informationen