Freigeben über


NdisOpenAdapterEx-Funktion (ndis.h)

Ein Protokolltreiber ruft die NdisOpenAdapterEx--Funktion aus der ProtocolBindAdapterEx--Funktion auf, um eine Bindung zwischen dem Protokolltreiber und einem zugrunde liegenden Treiber einzurichten.

Syntax

NDIS_STATUS NdisOpenAdapterEx(
  [in]  NDIS_HANDLE           NdisProtocolHandle,
  [in]  NDIS_HANDLE           ProtocolBindingContext,
  [in]  PNDIS_OPEN_PARAMETERS OpenParameters,
  [in]  NDIS_HANDLE           BindContext,
  [out] PNDIS_HANDLE          NdisBindingHandle
);

Parameter

[in] NdisProtocolHandle

Der von der NdisRegisterProtocolDriver Funktion.

[in] ProtocolBindingContext

Das Handle für einen vom Aufrufer bereitgestellten Kontextbereich, in dem der Protokolltreiber Zustandsinformationen für diese Bindung verwaltet.

[in] OpenParameters

Ein Zeiger auf eine NDIS_OPEN_PARAMETERS Struktur, die vom Aufrufer eingerichtet wird.

[in] BindContext

Das Handle, das den NDIS-Kontextbereich für den Bindungsvorgang identifiziert. NDIS hat dieses Handle an den BindContext Parameter der ProtocolBindAdapterEx--Funktion übergeben.

[out] NdisBindingHandle

Ein Zeiger auf eine vom Aufrufer bereitgestellte Variable. NDIS schreibt einen Handle bei NdisBindingHandle-, der die Bindung zwischen dem Aufrufer und dem miniportadapter identifiziert, der im AdapterName Member bei OpenParameters angegeben ist. Der Aufrufer verwendet dieses Handle in nachfolgenden Aufrufen von NdisXxx--Funktionen.

Rückgabewert

NdisOpenAdapterEx gibt einen der folgenden Statuswerte zurück:

Rückgabecode Beschreibung
NDIS_STATUS_SUCCESS
NdisOpenAdapterEx den Öffnenvorgang erfolgreich abgeschlossen.
NDIS_STATUS_PENDING
NdisOpenAdapterEx den Geöffneten Vorgang nicht abgeschlossen. NDIS ruft später die Protokolltreiber auf. ProtocolOpenAdapterCompleteEx--Funktion, um den Geöffneten Vorgang abzuschließen.
NDIS_STATUS_RESOURCES
NdisOpenAdapterEx aufgrund unzureichender Ressourcen nicht erfolgreich.
NDIS_STATUS_ADAPTER_NOT_FOUND
fehler NdisOpenAdapterEx-, da ein im AdapterName Member unter OpenParameters angegebene Miniportadapter nicht gefunden wurde.
NDIS_STATUS_UNSUPPORTED_MEDIA
NdisOpenAdapterEx- fehlgeschlagen, da das im MediumArray Member bei OpenParameters keinen mittleren Typ enthielt, der von NDIS oder dem zugrunde liegenden Treiber unterstützt wird.
NDIS_STATUS_FAILURE
NdisOpenAdapterEx aus anderen Gründen als denen in der vorherigen Liste fehlgeschlagen.

Bemerkungen

Ein Protokolltreiber muss NdisOpenAdapterEx- aus seiner ProtocolBindAdapterEx--Funktion aufrufen. NDIS schlägt fehl, NdisOpenAdapterEx- außerhalb des Kontexts von ProtocolBindAdapterExaufzurufen.

Wenn NdisOpenAdapterEx NDIS_STATUS_PENDING zurückgibt, darf der Aufrufer die Werte bei NdisBindingHandle- und dem SelectedMediumIndex Member bei OpenParameters nicht verwenden, bis NDIS die ProtocolOpenAdapterCompleteEx--Funktion.

Die Zeichenfolge bei AdapterName muss nur gültig bleiben, bis NdisOpenAdapterEx zurückgibt. Wenn NdisOpenAdapterEx NDIS_STATUS_PENDING zurückgibt, muss der Treiber diese Zeichenfolge daher nicht beibehalten, nachdem NdisOpenAdapterEx zurückgegeben wurde.

Nachdem der Öffnenvorgang erfolgreich abgeschlossen wurde, kann der Aufrufer den Wert verwenden, den NDIS in der NdisBindingHandle- in nachfolgenden Aufrufen von NdisXxx--Funktionen zurückgegeben hat. Der Aufrufer kann den SelectedMediumIndex Member des OpenParameters Parameter verwenden, um zu bestimmen, wie er mit dem zugrunde liegenden Treiber interagieren soll.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Unterstützt in NDIS 6.0 und höher.
Zielplattform- Desktop
Header- ndis.h (include Ndis.h)
Library Ndis.lib
IRQL- PASSIVE_LEVEL
DDI-Complianceregeln Irql_Protocol_Driver_Function(ndis)

Siehe auch

NDIS_OPEN_PARAMETERS

NdisRegisterProtocolDriver-

ProtocolBindAdapterEx-

ProtocolOpenAdapterCompleteEx-