NdisOpenFile-Funktion (ndis.h)
Die NdisOpenFile--Funktion gibt ein Handle für eine geöffnete Datei zurück.
Syntax
void NdisOpenFile(
[out] PNDIS_STATUS Status,
[out] PNDIS_HANDLE FileHandle,
[out] PUINT FileLength,
[in] PNDIS_STRING FileName,
[in] NDIS_PHYSICAL_ADDRESS HighestAcceptableAddress
);
Parameter
[out] Status
Ein Zeiger auf eine vom Aufrufer bereitgestellte Variable, in der diese Funktion den Status des Geöffneten Dateivorgangs zurückgibt. Dies kann eine der folgenden Sein:
NDIS_STATUS_SUCCESS
Das Handle bei FileHandle ist für einen nachfolgenden Aufruf von NdisMapFilegültig.
NDIS_STATUS_FILE_NOT_FOUND
Die angegebene Zeichenfolge bei FileName keinen Namen im Systemobjektnamespace angegeben.
NDIS_STATUS_RESOURCES
NDIS konnte die zum Öffnen der Datei erforderlichen Ressourcen nicht zuordnen und einen Puffer für den Dateiinhalt zuordnen.
NDIS_STATUS_ERROR_READING_FILE
Die Daten der angegebenen Datei konnten für den nachfolgenden Zugriff durch den Aufrufer nicht in den Systemspeicher gelesen werden.
[out] FileHandle
Ein Zeiger auf eine vom Aufrufer bereitgestellte Variable, in der diese Funktion das Handle der geöffneten Datei zurückgibt, wenn der Aufruf erfolgreich verläuft.
[out] FileLength
Ein Zeiger auf eine vom Aufrufer bereitgestellte Variable, in der diese Funktion die Anzahl der Daten in der geöffneten Datei schreibt, wenn der Aufruf erfolgreich verläuft.
[in] FileName
Ein Zeiger auf einen NDIS_STRING Typ, der eine initialisierte Zählungszeichenfolge enthält, im Systemstandardzeichensatz, wobei die zu öffnende Datei benannt wird. Für Windows 2000 und höhere Treiber enthält diese Zeichenfolge Unicode-Zeichen. Für Windows 2000 und höher definiert NDIS den NDIS_STRING Typ als UNICODE_STRING Typ.
[in] HighestAcceptableAddress
Die höchste physische Adresse, in der die Dateidaten gespeichert werden können, oder gibt -1 an, wenn der Treiber keine Einschränkungen angibt.
Rückgabewert
Nichts
Bemerkungen
NdisOpenFile öffnet eine Datenträgerdatei, in der Regel eine Datei, die der Treiber später herunterladen wird, um eine intelligente NIC zu programmieren. NdisOpenFile ordnet auch Speicher zum Speichern von Dateiinhalten für den nachfolgenden Aufruf des Treibers an die NdisMapFile--Funktion zu.
Ein Miniporttreiber sollte NdisOpenFile- nur von der funktion MiniportInitialize Ex aufrufen.
Wenn NdisOpenFile- zurückgibt, kann der Miniporttreiber auf Dateidaten zugreifen, indem NdisMapFile-aufgerufen wird. Sie kann die NdisUnmapFile--Funktion aufrufen, um die Datei auszulagern, sodass ressourcen nicht unnötig verbraucht werden, während der Treiber nicht auf die Dateidaten zugreift. Wenn die Verwendung der Datei abgeschlossen ist, muss MiniportInitializeEx- die
NdisCloseFile Funktion.
Anmerkung
NdisOpenFile, NdisCloseFile, NdisMapFile und NdisUnmapFile- werden auf ARM64 nicht unterstützt. Ersetzen Sie diese Funktionen auf ARM64 durch Aufrufe von ZwCreateFile-, ZwReadFile-oder anderen ähnlichen Vorgängen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Unterstützt für NDIS 6.0- und NDIS 5.1-Treiber (siehe NdisOpenFile (NDIS 5.1)) in Windows Vista. Unterstützt für NDIS 5.1-Treiber (siehe NdisOpenFile (NDIS 5.1)) in Windows XP. |
Zielplattform- | Universal |
Header- | ndis.h (include Ndis.h) |
Library | Ndis.lib |
IRQL- | PASSIVE_LEVEL |
DDI-Complianceregeln | Irql_Miscellaneous_Function(ndis) |