Поделиться через


функция обратного вызова NPI_CLIENT_DETACH_PROVIDER_FN (netioddk.h)

Функция обратного вызова клиентского модуля ClientDetachProvider отсоединяет клиентский модуль от модуля поставщика.

Синтаксис

NPI_CLIENT_DETACH_PROVIDER_FN NpiClientDetachProviderFn;

NTSTATUS NpiClientDetachProviderFn(
  [in] PVOID ClientBindingContext
)
{...}

Параметры

[in] ClientBindingContext

Указатель на контекст клиентского модуля для привязки между клиентским модулем и модулем поставщика, от которого она отсоединяется. Клиентский модуль передает этот указатель на NMR при вызове функции NmrClientAttachProvider для подключения к модулю поставщика.

Возвращаемое значение

Функция обратного вызова клиентского модуля ClientDetachProvider возвращает один из следующих кодов NTSTATUS:

Возвращаемый код Описание
STATUS_SUCCESS
Клиентский модуль успешно отсоединился от модуля поставщика.
STATUS_PENDING
Клиентский модуль не мог немедленно отсоединиться от модуля поставщика.

Замечания

NMR вызывает функцию обратного вызова клиентского модуля ClientDetachProvider при каждом завершении привязки между клиентским модулем и модулем поставщика. Отключение инициируется клиентским модулем, вызывающим функцию NmrDeregisterClient или модулем поставщика, вызывающим функцию NmrDeregisterProvider.

После вызова функции обратного вызова ClientDetachProvider модуль клиента больше не должен вызывать ни один из N PI модуля поставщика. Если вызовы NPI модуля поставщика отсутствуют, когда вызывается функция обратного вызова клиента ClientDetachProvider, функция обратного вызова клиентского модуля ClientDetachProvider возвращается STATUS_SUCCESS.

Если выполняются вызовы одной или нескольких функций модуля поставщика, NPI, когда вызывается функция обратного вызова клиентского модуля ClientDetachProvider, то функция обратного вызова клиентского модуля ClientDetachProvider возвращает STATUS_PENDING. В этой ситуации клиентский модуль должен вызвать функция NmrClientDetachProviderComplete после завершения всех вызовов NPI модуля поставщика. Вызов функция NmrClientDetachProviderComplete уведомляет NMR о завершении отсоединения от модуля поставщика.

NMR вызывает клиентский модуль функция обратного вызова ClientCleanupBindingContext и модуль поставщика ProviderCleanupBindingContext функцию обратного вызова после завершения отсоединения от модуля клиента и модуля поставщика.

NMR вызывает функцию обратного вызова модуля клиента ClientDetachProvider при любом <IRQL = DISPATCH_LEVEL.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно в Windows Vista и более поздних версиях операционных систем Windows.
целевая платформа Виндоус
заголовка netioddk.h (include Wsk.h)
IRQL <= DISPATCH_LEVEL

См. также

ClientCleanupBindingContext

NPI_CLIENT_CHARACTERISTICS

NmrClientAttachProvider

NmrClientDetachProviderComplete

NmrDeregisterClient

NmrDeregisterProvider

ProviderCleanupBindingContext