Compartir a través de


Función NmrDeregisterProvider (netioddk.h)

La función NmrDeregisterProvider anula el registro de un módulo de proveedor de NMR.

Sintaxis

NTSTATUS NmrDeregisterProvider(
  [in] HANDLE NmrProviderHandle
);

Parámetros

[in] NmrProviderHandle

Identificador utilizado por nmR para representar el registro del módulo de proveedor. NmR devuelve este identificador al módulo de proveedor cuando el módulo de proveedor llama a la función NmrRegisterProvider .

Valor devuelto

La función NmrDeregisterProvider devuelve uno de los siguientes códigos NTSTATUS:

Código devuelto Descripción
STATUS_PENDING
NmR inició la anulación del registro del módulo de proveedor. El módulo de proveedor debe llamar al Función NmrWaitForProviderDeregisterComplete para esperar hasta que se complete la desregistración antes de que se pueda descargar el módulo del proveedor.
Otros códigos de estado
Se produjo un error.

Comentarios

Cuando un módulo de proveedor llama a la función NmrDeregisterProvider , NMR llama a la función de devolución de llamada ProviderDetachClient del módulo del proveedor y la función de devolución de llamada ClientDetachProvider del módulo cliente para cada uno de los enlaces entre el módulo de proveedor y un módulo cliente. La anulación del registro del módulo de proveedor de NMR se completa después de que el módulo de proveedor se haya desasociado correctamente de todos los módulos cliente a los que está asociado y todos esos módulos cliente se hayan desasociado correctamente del módulo de proveedor.

Normalmente, un módulo de proveedor llama a la función NmrDeregisterProvider desde su función Unload para desasociarse de todos los módulos cliente a los que está asociado antes de que el módulo de proveedor se descargue del sistema. Después de llamar a la función NmrDeregisterProvider , un módulo de proveedor debe llamar al Función NmrWaitForProviderDeregisterComplete para esperar a que se complete la desregistración antes de que se pueda descargar el módulo del proveedor. Un módulo de proveedor no debe volver de una llamada a su función Unload hasta que se complete la anulación del registro.

Nota Si un módulo de proveedor usa Windows Driver Framework, normalmente llamará a . Función NmrDeregisterProvider de su función de devolución de llamada de evento EvtDriverUnload . En esta situación, el módulo de proveedor no debe volver de una llamada a su función EvtDriverUnload hasta que se complete la anulación del registro.
 

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows.
Plataforma de destino Escritorio
Encabezado netioddk.h (incluya Wsk.h)
Library Netio.lib
IRQL <= DISPATCH_LEVEL

Consulte también

ClientDetachProvider

EvtDriverUnload

NmrRegisterProvider

NmrWaitForProviderDeregisterComplete

ProviderDetachClient

Descargar