NdisWriteEventLogEntry, fonction (ndis.h)

NdisWriteEventLogEntry consigne un événement dans le journal des événements Win32.

Syntaxe

NDIS_STATUS NdisWriteEventLogEntry(
  [in]           PVOID       LogHandle,
  [in]           NDIS_STATUS EventCode,
  [in]           ULONG       UniqueEventValue,
  [in]           USHORT      NumStrings,
  [in, optional] PVOID       StringsList,
  [in]           ULONG       DataSize,
  [in, optional] PVOID       Data
);

Paramètres

[in] LogHandle

Pointeur vers l’objet pilote du protocole qui journalt cet événement.

[in] EventCode

Spécifie le code NDIS_STATUS_XXX décrivant l’événement.

[in] UniqueEventValue

Identifie cette instance du message d’erreur.

[in] NumStrings

Spécifie le nombre de pointeurs vers des chaînes Unicode dans le stringsList facultatif. Si StringsList a la valeur NULL, NumStrings doit être égal à zéro.

[in, optional] StringsList

Null ou pointe vers des chaînes Unicode mises en mémoire tampon. Ces chaînes, qui décrivent l’événement, sont insérées dans le journal des événements Win32 et peuvent être examinées avec l’observateur d’événements Win32. Chaque chaîne doit être une chaîne Unicode terminée par NUL.

[in] DataSize

Spécifie le nombre d’octets dans la mémoire tampon pour les données binaires dans Data . Si Data a la valeur NULL, DataSize doit être égal à zéro.

[in, optional] Data

Null ou pointe vers des données de vidage binaire mises en mémoire tampon qui sont utiles pour comprendre l’événement. Ces données peuvent être examinées avec l’observateur d’événements Win32.

Valeur retournée

NdisWriteEventLogEntry peut retourner l’une des valeurs suivantes :

Code de retour Description
NDIS_STATUS_SUCCESS
L’événement a été journalisé avec succès.
NDIS_STATUS_BUFFER_TOO_SHORT
Les chaînes Unicode et les données de vidage binaires fournies éventuellement dépassent la taille maximale autorisée (MAX_EVENT_LOG_DATA_SIZE).
NDIS_STATUS_RESOURCES
NDIS n’a pas pu allouer de mémoire pour l’enregistrement du journal des erreurs d’E/S.

Remarques

NdisWriteEventLogEntry alloue un enregistrement du journal des erreurs d’E/S, remplit l’enregistrement avec les informations fournies sur l’événement, puis écrit l’enregistrement dans le fichier journal des erreurs d’E/S. Un utilisateur peut afficher l’événement journalisé, y compris une description facultative de l’événement et/ou des données de vidage binaire facultatives, avec l’observateur d’événements Win32.

Le thread de journalisation des erreurs NT utilise toutes les chaînes fournies dans le stringsList facultatif pour remplir les messages écrits dans le journal des événements Win32. Chaque chaîne doit être une chaîne Unicode terminée par NUL. Le gestionnaire d’E/S suppose que la chaîne initiale est soit le nom du pilote signalant l’erreur, soit le nom de l’appareil à l’origine de l’erreur.

Les chaînes Unicode fournies par l’appelant doivent être lues à partir du Registre ou doivent être indépendantes de la langue (autrement dit, les chaînes doivent être les mêmes dans n’importe quelle langue ; par exemple, la chaîne peut être un nom de fichier).

Les données de vidage fournies par l’appelant peuvent être toutes les données binaires (telles que les valeurs de registre) utiles pour comprendre l’événement. L’appelant n’a pas à pagayer les données binaires. Si nécessaire, NdisWriteEventLogEntry padse les données de vidage binaires afin que la taille finale des données soit une intégrale multiple de sizeof(ULONG).

Le système limite la taille totale des données facultatives fournies à NdisWriteEventLogEntry. La taille combinée de la liste de chaînes et du vidage binaire (éventuellement rembourré) doit être inférieure ou égale à MAX_EVENT_LOG_DATA_SIZE.

NdisWriteEventLogEntry est appelé uniquement par les pilotes de protocole. Les pilotes Miniport doivent appeler NdisWriteErrorLogEntry pour consigner les événements et les erreurs.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge pour les pilotes NDIS 6.0 et NDIS 5.1 (voir NdisWriteEventLogEntry (NDIS 5.1)) dans Windows Vista. Pris en charge pour les pilotes NDIS 5.1 (consultez NdisWriteEventLogEntry (NDIS 5.1)) dans Windows XP.
Plateforme cible Universal
En-tête ndis.h (inclure Ndis.h)
Bibliothèque Ndis.lib
IRQL <= DISPATCH_LEVEL
Règles de conformité DDI Irql_Miscellaneous_Function(ndis)

Voir aussi

MiniportInitializeEx

MiniportResetEx

NdisMSetMiniportAttributes

NdisWriteErrorLogEntry