NdisMWriteLogData, fonction (ndis.h)
NdisMWriteLogData transfère les informations fournies par le pilote dans le fichier journal à des fins de consommation et d’affichage par une application Win32 dédiée au pilote.
Syntaxe
NDIS_STATUS NdisMWriteLogData(
[in] NDIS_HANDLE LogHandle,
[in] PVOID LogBuffer,
[in] UINT LogBufferSize
);
Paramètres
[in] LogHandle
Spécifie le handle retourné par NdisMCreateLog.
[in] LogBuffer
Pointeur vers une mémoire tampon allouée par le pilote contenant les informations à écrire.
[in] LogBufferSize
Spécifie le nombre d’octets de données à copier dans le fichier journal.
Valeur de retour
NdisMWriteLogData pouvez retourner l’une des options suivantes :
Retourner le code | Description |
---|---|
|
Les données fournies par le pilote à LogBuffer ont été copiées dans le fichier journal. |
|
La LogBufferSize donnée est trop volumineuse, c’est-à-dire supérieure au fichier journal lui-même. |
Remarques
Si l’application dédiée au pilote a une demande en attente de données de fichier journal, NdisMWriteLogData satisfait à cette demande dès qu’elle a copié les informations fournies par le pilote dans le fichier journal.
Le pilote miniport peut fournir un pointeur LogBuffer vers un emplacement sur la pile du noyau s’il est en cours d’exécution à l'< DISPATCH_LEVEL IRQL. Sinon, LogBuffer doit accéder à une mémoire tampon allouée par le pilote à partir d’un pool non paginé.
Le pilote doit libérer tout verrou de rotation qu’il contient avant d’appeler NdisMWriteLogData.
NdisMWriteLogData ne reconnaît pas les limites entre les enregistrements de journal, ni la fonction Win32, DeviceIoControl, que les applications peuvent appeler avec IOCTL_NDIS_GET_LOG_DATA pour récupérer les données écrites dans un fichier journal NDIS par un pilote miniport NDIS. NdisMWriteLogData écrit toutes les données fournies par le pilote miniport à LogBuffer dans le fichier journal sous forme de flux d’octets. DeviceIoControl lit également les données d’un tel journal en tant que flux d’octets.
Par conséquent, une application qui lit un journal NDIS doit collecter des données récupérées dans des enregistrements. Pour aider une telle application à collecter des enregistrements de longueur variable, tout pilote miniport qui écrit dans un tel journal peut insérer un marqueur au début de chaque enregistrement. Ensuite, la mise en forme de l’application les données récupérées peut rechercher ces marqueurs pour déterminer le début de chaque enregistrement.