Freigeben über


NPI_CLIENT_ATTACH_PROVIDER_FN Rückruffunktion (netioddk.h)

Die ClientAttachProvider-Rückruffunktion eines Clientmoduls fügt das Clientmodul an ein Anbietermodul an.

Syntax

NPI_CLIENT_ATTACH_PROVIDER_FN NpiClientAttachProviderFn;

NTSTATUS NpiClientAttachProviderFn(
  [in] HANDLE NmrBindingHandle,
  [in] PVOID ClientContext,
  [in] PNPI_REGISTRATION_INSTANCE ProviderRegistrationInstance
)
{...}

Parameter

[in] NmrBindingHandle

Ein Handle, das vom NMR verwendet wird, um die Bindung zwischen dem Clientmodul und dem Anbietermodul darzustellen.

[in] ClientContext

Ein Zeiger auf den Registrierungskontext des Clientmoduls. Das Clientmodul übergibt diesen Zeiger an den NMR, wenn es die NmrRegisterClient-Funktion aufruft, um sich beim NMR zu registrieren.

[in] ProviderRegistrationInstance

Ein Zeiger auf einen NPI_REGISTRATION_INSTANCE Struktur. Diese Struktur enthält die Registrierungsdaten des Anbietermoduls.

Rückgabewert

Die ClientAttachProvider-Rückruffunktion eines Clientmoduls gibt einen der folgenden NTSTATUS-Codes zurück:

Rückgabecode Beschreibung
STATUS_SUCCESS
Das Clientmodul und das Anbietermodul wurden erfolgreich miteinander verknüpft.
STATUS_NOINTERFACE
Entweder wurde das Clientmodul nicht an das Anbietermodul angefügt, oder das Anbietermodul wurde nicht an das Clientmodul angefügt.
Andere status Codes
Ein Fehler ist aufgetreten.

Hinweise

Nachdem ein Clientmodul beim NMR registriert wurde, ruft der NMR die ClientAttachProvider-Rückruffunktion des Clientmoduls einmal für jedes Anbietermodul auf, das als Anbieter derselben NPI registriert ist, für die das Clientmodul als Client registriert ist.

Der NMR ruft auch die ClientAttachProvider-Rückruffunktion eines Clientmoduls auf, wenn ein neues Netzwerkmodul als Anbieter desselben NPI registriert wird, für den das Clientmodul als Client registriert ist.

Ein Clientmodul kann die Registrierungsdaten des Anbietermoduls untersuchen. Diese Daten befinden sich in der Struktur, auf die der Parameter ProviderRegistrationInstance verweist. Das Clientmodul verwendet diese Daten, um zu bestimmen, ob es an das Anbietermodul angefügt wird:

  • Wenn das Clientmodul feststellt, dass es an das Anbietermodul angefügt wird, ruft die ClientAttachProvider-Rückruffunktion die NmrClientAttachProvider-Funktion auf, um den Anlageprozess fortzusetzen. In dieser Situation muss die ClientAttachProvider-Rückruffunktion den status Code zurückgeben, der vom Aufruf des zurückgegeben wird. NmrClientAttachProvider-Funktion .
  • Wenn das Clientmodul feststellt, dass es nicht an das Anbietermodul angefügt wird, muss die ClientAttachProvider-Rückruffunktion STATUS_NOINTERFACE zurückgeben.
Wenn das Clientmodul erfolgreich an das Anbietermodul angefügt wird, muss das im NmrBindingHandle-Parameter angegebene Handle gespeichert werden. Das Clientmodul übergibt dieses Handle als Parameter an die NmrClientDetachProviderComplete-Funktion , wenn sie vom Anbietermodul getrennt wird.

Der NMR ruft die ClientAttachProvider-Rückruffunktion eines Clientmoduls unter IRQL = PASSIVE_LEVEL auf.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme.
Zielplattform Windows
Kopfzeile netioddk.h (einschließen von Wsk.h)
IRQL PASSIVE_LEVEL

Weitere Informationen

ClientDetachProvider

NPI_CLIENT_CHARACTERISTICS

NPI_REGISTRATION_INSTANCE

NmrClientAttachProvider

NmrClientDetachProviderComplete

NmrRegisterClient