NdisRegisterProtocolDriver-Funktion (ndis.h)

Ein Protokolltreiber ruft die NdisRegisterProtocolDriver-Funktion auf, um seine ProtocolXxx-Funktionen bei NDIS zu registrieren.

Syntax

NDIS_STATUS NdisRegisterProtocolDriver(
  [in, optional] NDIS_HANDLE                           ProtocolDriverContext,
  [in]           PNDIS_PROTOCOL_DRIVER_CHARACTERISTICS ProtocolCharacteristics,
  [out]          PNDIS_HANDLE                          NdisProtocolHandle
);

Parameter

[in, optional] ProtocolDriverContext

Ein Handle für einen vom Treiber zugewiesenen Kontextbereich, in dem der Treiber Zustands- und Konfigurationsinformationen verwaltet.

[in] ProtocolCharacteristics

Ein Zeiger auf einen NDIS_PROTOCOL_DRIVER_CHARACTERISTICS Struktur, die der Protokolltreiber erstellt und mit den Einstiegspunkten der ProtocolXxx-Funktion initialisiert hat.

[out] NdisProtocolHandle

Ein Zeiger auf eine vom Aufrufer bereitgestellte Handle-Variable. NDIS schreibt ein Handle in diese Variable, das den zu registrierenden Treiber eindeutig identifiziert. Der Treiber muss dieses Handle für die Verwendung in nachfolgenden NdisXxx-Funktionsaufrufen speichern.

Rückgabewert

NdisRegisterProtocolDriver gibt einen der folgenden status Werte zurück:

Rückgabecode Beschreibung
NDIS_STATUS_SUCCESS

NdisRegisterProtocolDriver gibt NDIS_STATUS_SUCCESS zurück, wenn der Protokolltreiber registriert wurde.

NDIS_STATUS_BAD_VERSION
Die im MajorNdisVersion-Member der -Struktur unter ProtocolCharacteristics angegebene Version ist ungültig.
NDIS_STATUS_BAD_CHARACTERISTICS
Einige Member der Struktur am Parameter ProtocolCharacteristics sind ungültig.
NDIS_STATUS_RESOURCES

Fehler bei NdisRegisterProtocolDriver aufgrund unzureichender Ressourcen.

NDIS_STATUS_FAILURE

NdisRegisterProtocolDriver gibt NDIS_STATUS_FAILURE zurück, wenn keiner der vorherigen Werte zutrifft.

Hinweise

Ein Protokolltreiber ruft die NdisRegisterProtocolDriver-Funktion aus seiner DriverEntry-Routine auf. Weitere Informationen zu DriverEntry finden Sie unter DriverEntry of NDIS Protocol Drivers.

Treiber, die NdisRegisterProtocolDriver aufrufen, müssen auf einen sofortigen Aufruf einer ihrer ProtocolXxx-Funktionen vorbereitet sein.

Jeder Protokolltreiber exportiert einen Satz von ProtocolXxx-Funktionen , indem er die NDIS_PROTOCOL_DRIVER_CHARACTERISTICS Struktur und aufrufen von NdisRegisterProtocolDriver. NDIS kopiert diese Struktur in den internen Speicher der NDIS-Bibliothek.

Damit Protokolltreiber optionale Dienste registrieren können, ruft NDIS die ProtocolSetOptions-Funktion im Kontext von NdisRegisterProtocolDriver auf.

Protokolltreiber rufen die NdisDeregisterProtocolDriver-Funktion zum Freigeben von Ressourcen, die zuvor NdisRegisterProtocolDriver zugeordnet wurden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt in NDIS 6.0 und höher.
Zielplattform Desktop
Kopfzeile ndis.h (einschließlich Ndis.h)
Bibliothek Ndis.lib
IRQL PASSIVE_LEVEL
DDI-Complianceregeln Irql_Protocol_Driver_Function(ndis)

Weitere Informationen

DriverEntry von NDIS-Protokolltreibern

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS

NdisDeregisterProtocolDriver

NdisSetOptionalHandlers