NmrDeregisterProvider-Funktion (netioddk.h)

Die NmrDeregisterProvider-Funktion hebt die Registrierung eines Anbietermoduls aus dem NMR auf.

Syntax

NTSTATUS NmrDeregisterProvider(
  [in] HANDLE NmrProviderHandle
);

Parameter

[in] NmrProviderHandle

Ein Handle, das vom NMR verwendet wird, um die Registrierung des Anbietermoduls darzustellen. Der NMR gibt dieses Handle an das Anbietermodul zurück, wenn das Anbietermodul die NmrRegisterProvider-Funktion aufruft.

Rückgabewert

Die NmrDeregisterProvider-Funktion gibt einen der folgenden NTSTATUS-Codes zurück:

Rückgabecode Beschreibung
STATUS_PENDING
Der NMR initiierte die Aufhebung der Registrierung des Anbietermoduls. Das Anbietermodul muss die Die NmrWaitForProviderDeregisterComplete-Funktion wartet, bis die Registrierung abgeschlossen ist, bevor das Anbietermodul entladen werden kann.
Andere status Codes
Ein Fehler ist aufgetreten.

Hinweise

Wenn ein Anbietermodul die NmrDeregisterProvider-Funktion aufruft, ruft der NMR die ProviderDetachClient-Rückruffunktion des Anbietermoduls und die ClientDetachProvider-Rückruffunktion des Clientmoduls für jede der Bindungen zwischen dem Anbietermodul und einem Clientmodul auf. Die Aufhebung der Registrierung des Anbietermoduls aus dem NMR ist abgeschlossen, nachdem das Anbietermodul erfolgreich von allen Clientmodulen getrennt wurde, an die es angefügt ist, und alle diese Clientmodule erfolgreich vom Anbietermodul getrennt wurden.

Ein Anbietermodul ruft in der Regel die NmrDeregisterProvider-Funktion aus seiner Unload-Funktion auf, um sich von allen Clientmodulen zu trennen, an die es angefügt ist, bevor das Anbietermodul aus dem System entladen wird. Nach dem Aufrufen der NmrDeregisterProvider-Funktion muss ein Anbietermodul das Die NmrWaitForProviderDeregisterComplete-Funktion wartet auf den Abschluss der Registrierung, bevor das Anbietermodul entladen werden kann. Ein Anbietermodul darf erst nach Abschluss der Deregistrierung von einem Aufruf seiner Unload-Funktion zurückkehren.

Hinweis Wenn ein Anbietermodul das Windows-Treiberframework verwendet, ruft es in der Regel die NmrDeregisterProvider-Funktion aus ihrer EvtDriverUnload-Ereignisrückruffunktion . In diesem Fall darf das Anbietermodul erst nach Abschluss der Aufhebung der Registrierung von einem Aufruf seiner EvtDriverUnload-Funktion zurückkehren.
 

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme.
Zielplattform Desktop
Kopfzeile netioddk.h (include Wsk.h)
Bibliothek Netio.lib
IRQL <= DISPATCH_LEVEL

Weitere Informationen

ClientDetachProvider

EvtDriverUnload

NmrRegisterProvider

NmrWaitForProviderDeregisterComplete

ProviderDetachClient

Entladen