Fonction WmiTraceMessage (wdm.h)
La routine WmiTraceMessage ajoute un message au journal de sortie d’une session de suivi logiciel WPP .
Syntaxe
NTSTATUS WmiTraceMessage(
[in] TRACELOGGER_HANDLE LoggerHandle,
[in] ULONG MessageFlags,
[in] LPCGUID MessageGuid,
[in] USHORT MessageNumber,
...
);
Paramètres
[in] LoggerHandle
Spécifie un handle de trace pour une session de suivi logiciel.
[in] MessageFlags
Spécifie un OR au niveau du bit d’un ou de plusieurs indicateurs de message. Pour plus d'informations, consultez la section Notes.
[in] MessageGuid
Spécifie un GUID qui identifie la classe de messages de trace logicielle.
[in] MessageNumber
Identifie le sous-type de message. La signification des sous-types est spécifique à la classe de trace logicielle et au fournisseur.
[in] ...
Fournit la liste requise des paramètres de message qui spécifient un ensemble de parties de message. Les paramètres sont organisés sous la forme d’une séquence de paires de paramètres, où chaque paire spécifie une partie du message complet. Chaque paire de paramètres se compose d’un pointeur PVOID vers les données, suivi immédiatement d’une valeur ULONG qui spécifie la longueur des données. La liste de paramètres doit être terminée par un pointeur PVOID NULL suivi d’un ULONG(0).
Valeur retournée
WmiTraceMessage retourne l’une des valeurs suivantes :
Code de retour | Description |
---|---|
|
L’opération s’est terminée avec succès. |
|
LoggerHandle n’est pas un handle de trace logiciel valide. |
|
La mémoire tampon est insuffisante pour journaliser le message. Consultez la section Notes. |
|
Une erreur interne s’est produite. |
Remarques
Un appelant peut utiliser WmiTraceMessage ou WmiTraceMessageVa pour ajouter un message au journal de sortie d’une session de suivi logiciel WPP. WmiTraceMessage simplifie le code d’un appelant en gérant le mécanisme de liste de variables avant d’appeler WmiTraceMessageVa.
Un appelant peut définir les indicateurs de message suivants :
Indicateur | Description |
---|---|
TRACE_MESSAGE_SEQUENCE | Incluez un numéro de séquence dans le message. Le séquencement de messages ne peut être utilisé que s’il est défini pour la session de suivi logiciel spécifiée par LoggerHandle. |
TRACE_MESSAGE_GUID | MessageGuid spécifie un GUID qui identifie une classe de trace logicielle. Cet indicateur doit être défini. |
TRACE_MESSAGE_TIMESTAMP | Incluez un horodatage dans le message. |
TRACE_MESSAGE_PERFORMANCE_TIMESTAMP | Cet indicateur n’est pas implémenté et est obsolète. Il ne doit pas être utilisé. |
TRACE_MESSAGE_SYSTEMINFO | Incluez l’identificateur de thread (TID) et l’identificateur de processus (PID) dans le message. |
Un message n’est pas consigné si l’une des conditions suivantes est vraie :
- La taille totale, en octets, des données de message et de l’en-tête du message est supérieure à la taille des mémoires tampons de messages individuelles allouées pour une session de suivi logiciel. (La taille maximale de l’en-tête de message est de 48 octets.)
- Toutes les mémoires tampons de messages allouées à la session de suivi logiciel sont complètes.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows XP et les versions ultérieures de Windows. |
Plateforme cible | Universal |
En-tête | wdm.h (inclure Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Consultez la section Notes. |