EventLogEntry.InstanceId Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient l'identificateur de ressource qui désigne le texte du message de l'entrée d'événement.
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
Valeur de propriété
Identificateur de ressource qui correspond à une définition de chaîne dans le fichier de ressources du message de la source d'événements.
- Attributs
Exemples
L’exemple de code suivant recherche dans un journal des événements des entrées avec un identificateur de ressource particulier. L’exemple de code affiche le message d’événement pour chaque entrée correspondante et compte le nombre total d’entrées correspondantes dans le journal. Le texte du message pour chaque entrée peut ou non être le même ; chaque message d’événement dépend du fichier de message source de l’événement, des chaînes d’insertion et des paramètres utilisés lors de son écriture.
// 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)
Remarques
La InstanceId propriété identifie de manière unique une entrée d’événement pour une source d’événement configurée. pour InstanceId une entrée de journal des événements représente l’identificateur de ressource 32 bits complet pour l’événement dans le fichier de ressources de message pour la source d’événement. La EventID propriété est égale au InstanceId avec les deux premiers bits masqués. Deux entrées de journal des événements de la même source peuvent avoir des valeurs correspondantes EventID , mais ont des valeurs différentes InstanceId en raison de différences dans les deux premiers bits de l’identificateur de ressource.
Si l’application a écrit l’entrée d’événement à l’aide de l’une WriteEntry des méthodes, la InstanceId propriété correspond au paramètre facultatif eventId
. Si l’application a écrit l’événement à l’aide WriteEventde , la InstanceId propriété correspond à l’identificateur de ressource spécifié dans le InstanceIdinstance
du paramètre . Si l’application a écrit l’événement à l’aide de l’API ReportEvent
Windows , la InstanceId propriété correspond à l’identificateur de ressource spécifié dans le dwEventID
paramètre .
Pour plus d’informations sur la définition des messages d’événements et la création de fichiers de ressources du journal des événements, consultez l’article Compilateur de messages dans la documentation du Kit de développement logiciel (SDK) de plateforme. Pour plus d’informations sur les identificateurs de journal des événements, consultez l’article Identificateurs d’événements dans la documentation du Kit de développement logiciel (SDK) de plateforme.