Función NdisMapFile (ndis.h)

La función NdisMapFile asigna un archivo ya abierto a un búfer accesible para el autor de la llamada si el archivo no está asignado actualmente.

Sintaxis

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

Parámetros

[out] Status

Puntero a una variable proporcionada por el autor de la llamada en la que esta función devuelve el estado de la operación de asignación, que puede ser una de las siguientes:

NDIS_STATUS_SUCCESS

El autor de la llamada tiene acceso exclusivo al contenido del archivo hasta que se llama a la función NdisUnmapFile .

NDIS_STATUS_ALREADY_MAPPED

El autor de la llamada no puede acceder al contenido del archivo en este momento.

[out] MappedBuffer

Puntero a una variable proporcionada por el autor de la llamada en la que esta función devuelve la dirección virtual base del contenido del archivo asignado o NULL.

[in] FileHandle

Identificador devuelto por una llamada anterior a la función NdisOpenFile .

Valor devuelto

None

Observaciones

NdisMapFile asocia (asigna) un intervalo de direcciones virtuales con un archivo abierto para que el controlador pueda acceder al contenido del archivo. NdisMapFile solo permite que una asignación de un archivo determinado esté pendiente en cualquier momento. Por lo tanto, se concede acceso exclusivo a un llamador correcto a los datos del archivo hasta que se llama a NdisUnmapFile o a la función NdisCloseFile .

Un controlador de minipuerto puede asignar y desasignación de este tipo de archivo abierto según sea necesario, mediante llamadas alternas a NdisMapFile y NdisUnmapFile. Una llamada a NdisCloseFile libera FileHandle y desasigna el búfer que contiene el contenido del archivo.

Un controlador de minipuerto solo puede llamar a NdisMapFile durante la inicialización.

Requisitos

Requisito Value
Cliente mínimo compatible Compatible con los controladores NDIS 6.0 y NDIS 5.1 (consulte NdisMapFile (NDIS 5.1)) en Windows Vista. Compatible con los controladores NDIS 5.1 (consulte NdisMapFile (NDIS 5.1)) en Windows XP.
Plataforma de destino Universal
Encabezado ndis.h (incluya Video.h)
Library Ndis.lib
IRQL <= DISPATCH_LEVEL
Reglas de cumplimiento de DDI Irql_Miscellaneous_Function(ndis)

Consulte también

MiniportInitializeEx

NdisCloseFile

NdisOpenFile

NdisUnmapFile