Fonction NdisMapFile (ndis.h)

La fonction NdisMapFile mappe un fichier déjà ouvert dans une mémoire tampon accessible par l’appelant si le fichier n’est pas mappé.

Syntaxe

void NdisMapFile(
  [out] PNDIS_STATUS Status,
  [out] PVOID        *MappedBuffer,
  [in]  NDIS_HANDLE  FileHandle
);

Paramètres

[out] Status

Pointeur vers une variable fournie par l’appelant dans laquelle cette fonction retourne le status de l’opération de mappage, ce qui peut être l’un des éléments suivants :

NDIS_STATUS_SUCCESS

L’appelant a un accès exclusif au contenu du fichier jusqu’à ce que la fonction NdisUnmapFile soit appelée.

NDIS_STATUS_ALREADY_MAPPED

L’appelant ne peut pas accéder au contenu du fichier pour le moment.

[out] MappedBuffer

Pointeur vers une variable fournie par l’appelant dans laquelle cette fonction retourne l’adresse virtuelle de base du contenu du fichier mappé ou NULL.

[in] FileHandle

Handle retourné par un appel précédent à la fonction NdisOpenFile .

Valeur de retour

None

Remarques

NdisMapFile associe (mappe) une plage d’adresses virtuelle à un fichier ouvert afin que le pilote puisse accéder au contenu du fichier. NdisMapFile n’autorise qu’un seul mappage d’un fichier particulier en attente à tout moment. Par conséquent, un appelant ayant réussi reçoit un accès exclusif aux données de fichier jusqu’à ce que NdisUnmapFile ou la fonction NdisCloseFile soit appelé.

Un pilote miniport peut mapper et annuler le mappage d’un fichier ouvert si nécessaire, en utilisant des appels alternés à NdisMapFile et NdisUnmapFile. Un appel à NdisCloseFile libère le FileHandle et libère la mémoire tampon contenant le contenu du fichier.

Un pilote miniport peut appeler NdisMapFile uniquement pendant l’initialisation.

Configuration requise

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

Voir aussi

MiniportInitializeEx

NdisCloseFile

NdisOpenFile

NdisUnmapFile