Функция NdisDeregisterProtocol (ndis.h)
Примечание NDIS 5. X является нерекомендуемым и заменен NDIS 6. x. Сведения о разработке новых драйверов NDIS см. в статье Сетевые драйверы, начиная с Windows Vista. Сведения о переносе NDIS 5. x драйверы для NDIS 6. x, см. раздел Перенос драйверов NDIS 5.x в NDIS 6.0.
NdisDeregisterProtocol освобождает ресурсы, выделенные при вызове драйвера NdisRegisterProtocol.
Синтаксис
void NdisDeregisterProtocol(
[out] PNDIS_STATUS Status,
[in] NDIS_HANDLE NdisProtocolHandle
);
Параметры
[out] Status
Указатель на переменную, предоставленную вызывающей стороной, которая имеет значение NDIS_STATUS_SUCCESS при возвращении из этой функции.
[in] NdisProtocolHandle
Указывает дескриптор, возвращаемый NdisRegisterProtocol при инициализации драйвера.
Возвращаемое значение
None
Remarks
Зарегистрированные драйверы протокола вызывают NdisDeregisterProtocol в любом из следующих случаев:
Драйвер уже успешно называется NdisRegisterProtocol , но он не может привязаться к базовому драйверу NDIS на компьютере.
Драйвер выгружается. То есть была вызвана подпрограмма Unload, настроенная в объекте драйвера во время инициализации, или была вызвана функция ProtocolUnbindAdapter для освобождения последней оставшейся привязки драйвера.
Дополнительные сведения о подпрограмме выгрузки и других стандартных процедурах драйвера в режиме ядра см. в разделе Компоненты драйвера режима ядра.
Система завершает работу. Так как драйвер, который является протоколом самого высокого уровня, называется IoRegisterShutdownNotification при инициализации, вызывается его подпрограмма завершения работы.
Дополнительные сведения см. в разделе IoRegisterShutdownNotification .
Если протокол имеет открытые привязки, его вызов NdisDeregisterProtocol приводит к тому, что NDIS вызывает функцию ProtocolUnbindAdapter протокола один раз для каждой открытой привязки. ProtocolUnbindAdapter вызывает NdisCloseAdapter для закрытия привязки.
При закрытии незавершенных открытий NdisDeregisterProtocol освобождает все фильтры, настроенные вызывающим объектом, и освобождает память NDIS, выделенную для отслеживания привязок и фильтров для драйвера протокола.
- Целевая платформа: универсальная
- Версия: не поддерживается для драйверов NDIS 6.0 в Windows Vista. Вместо этого используйте NdisDeregisterProtocolDriver. Поддерживается для драйверов NDIS 5.1 в Windows Vista и Windows XP.
Требования
Требование | Значение |
---|---|
Заголовок | ndis.h (включая Ndis.h) |
Библиотека | Ndis.lib |
IRQL | PASSIVE_LEVEL |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по