NdisMapFile-Funktion (ndis.h)

Die NdisMapFile-Funktion ordnet eine bereits geöffnete Datei einem Puffer zu, auf den der Aufrufer zugegriffen werden kann, wenn die Datei derzeit nicht zugeordnet ist.

Syntax

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

Parameter

[out] Status

Ein Zeiger auf eine vom Aufrufer bereitgestellte Variable, in der diese Funktion den status des Zuordnungsvorgangs zurückgibt. Dies kann eine der folgenden Sein:

NDIS_STATUS_SUCCESS

Der Aufrufer hat exklusiven Zugriff auf den Dateiinhalt, bis die NdisUnmapFile-Funktion aufgerufen wird.

NDIS_STATUS_ALREADY_MAPPED

Der Aufrufer kann derzeit nicht auf den Dateiinhalt zugreifen.

[out] MappedBuffer

Ein Zeiger auf eine vom Aufrufer bereitgestellte Variable, in der diese Funktion die virtuelle Basisadresse des zugeordneten Dateiinhalts oder NULL zurückgibt.

[in] FileHandle

Das Handle, das von einem vorherigen Aufruf der NdisOpenFile-Funktion zurückgegeben wurde.

Rückgabewert

Keine

Bemerkungen

NdisMapFile ordnet einen virtuellen Adressbereich mit einer geöffneten Datei zu(n), damit der Treiber auf den Dateiinhalt zugreifen kann. Mit NdisMapFile kann jederzeit nur eine Zuordnung einer bestimmten Datei ausstehend sein. Folglich erhält ein erfolgreicher Aufrufer exklusiven Zugriff auf die Dateidaten, bis NdisUnmapFile oder die NdisCloseFile-Funktion aufgerufen wird.

Ein Miniporttreiber kann eine solche geöffnete Datei nach Bedarf zuordnen und die Zuordnung aufheben, indem er abwechselnd Aufrufe von NdisMapFile und NdisUnmapFile verwendet. Ein Aufruf von NdisCloseFile gibt fileHandle frei und hebt die Zuordnung des Puffers auf, der den Dateiinhalt enthält.

Ein Miniporttreiber kann NdisMapFile nur während der Initialisierung aufrufen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt für NDIS 6.0- und NDIS 5.1-Treiber (siehe NdisMapFile (NDIS 5.1)) in Windows Vista. Unterstützt für NDIS 5.1-Treiber (siehe NdisMapFile (NDIS 5.1)) in Windows XP.
Zielplattform Universell
Header ndis.h (Video.h einschließen)
Bibliothek Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI-Complianceregeln Irql_Miscellaneous_Function(ndis)

Weitere Informationen

MiniportInitializeEx

NdisCloseFile

NdisOpenFile

NdisUnmapFile