Partager via


Fonction NdisMCreateLog (ndis.h)

NdisMCreateLog alloue et ouvre un fichier journal dans lequel un pilote miniport peut écrire des données à afficher par une application Win32 dédiée au pilote.

Syntaxe

NDIS_STATUS NdisMCreateLog(
  [in]  NDIS_HANDLE  MiniportAdapterHandle,
  [in]  UINT         Size,
  [out] PNDIS_HANDLE LogHandle
);

Paramètres

[in] MiniportAdapterHandle

Spécifie l’entrée de handle dans MiniportInitializeEx.

[in] Size

Spécifie le nombre d’octets à allouer pour le fichier journal. NDIS crée un fichier temporaire qui n’est pas stocké sur le disque.

[out] LogHandle

Pointeur vers une variable fournie par l’appelant dans laquelle cette fonction retourne un handle au fichier journal. Ce handle est un paramètre obligatoire pour les fonctions NdisXxxLog que le pilote miniport appelle par la suite.

Valeur retournée

NdisMCreateLog peut retourner l’un des éléments suivants :

Code de retour Description
NDIS_STATUS_SUCCESS
Le pilote miniport peut utiliser le handle retourné dans LogHandle pour écrire des données dans le fichier journal alloué par NDIS.
NDIS_STATUS_RESOURCES
Impossible d’allouer un fichier journal de la taille spécifiée.
NDIS_STATUS_FAILURE
Le pilote a déjà appelé NdisMCreateLog avec succès.

Remarques

Un pilote miniport peut appeler le NdisM.. Fonctions de journalisation pour fournir toutes les informations choisies par l’enregistreur de pilote. Quels que soient les journaux des pilotes miniports pouvant être affichés par une application Win32 dédiée au pilote. Une telle application appelle la fonction Win32 DeviceIoControl avec IOCTL_NDIS_GET_LOG_DATA régulièrement pour récupérer tout ce que le pilote miniport a écrit dans le fichier journal. Par exemple, un pilote miniport sous-développement peut écrire des données de test à afficher par son application correspondante.

Si NdisMCreateLog retourne NDIS_STATUS_RESOURCES, le pilote peut ajuster la taille d’origine vers le bas et réessayer d’appeler cette fonction. Toutefois, un pilote miniport ne peut pas appeler NdisMCreateLog pour créer plusieurs fichiers journaux après la réussite d’un appel.

Quelle que soit la taille du fichier journal allouée, les appels ultérieurs à NdisMWriteLogData stockent les données dans ce fichier, qui est traité comme une mémoire tampon circulaire. Autrement dit, une séquence d’appels à NdisMWriteLogData remplace finalement les données initialement écrites dans le fichier journal.

Configuration requise

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

Voir aussi

MiniportInitializeEx

NdisMCloseLog

NdisMFlushLog

NdisMWriteLogData