Включение и отключение функций NDK
Чтобы включить или отключить функции NDK, NDIS выдает запрос OID_NDK_SET_STATE OID. Драйвер мини-порта с поддержкой NDK должен зарегистрировать поддержку этого объекта OID в функции MiniportOidRequest .
Определение возможности включения функций NDK
Ключевое слово *NetworkDirect определяет, можно ли включить функциональность NDK драйвера минипорта.
Если для этого ключевое слово задано значение 1 ("Включено"), можно включить функции NDK.
Если задано значение 0 ("Отключено"), функциональность NDK не может быть включена.
Если драйвер мини-порта установлен, его INF-файл по умолчанию устанавливает для этого ключевое слово значение 1 ("Включено"). Дополнительные сведения см. в разделе Требования INF для NDKPI.
После установки драйвера мини-порта администраторы могут обновить значение *NetworkDirect ключевое слово, задав новое значение на странице свойств Дополнительно для адаптера. Дополнительные сведения о дополнительных свойствах см. в разделе Указание параметров конфигурации для страницы дополнительных свойств.
Примечание Драйвер мини-порта автоматически перезапускается после внесения изменений на странице свойств Дополнительно для адаптера.
Когда следует включать или отключать функции NDK
Это изменение состояния может быть активировано запросом OID_NDK_SET_STATE OID или успешной или неудачной ошибкой в самом адаптере.
Включение или отключение функций NDK
Чтобы включить или отключить функциональность NDK, драйвер минипорта должен отправить событие NetEventNDKEnable или NetEventNDKDisable Plug and Play (PnP) в NDIS.
Чтобы отправить событие PnP, драйвер минипорта вызывает функцию NdisMNetPnPEvent , задав элемент NetPnPEventструктуры NET_PNP_EVENT_NOTIFICATION , на которую указывает параметр NetPnPEvent , следующим образом:
NetEventNDKEnable, если необходимо включить функциональность NDK.
NetEventNDKОтключается, если функциональность NDK должна быть отключена.
Событие PnP NetEventNDKDisable активирует драйверы NDIS и верхнего уровня, чтобы начать закрывать свои открытые экземпляры NDK_ADAPTER через адаптер, на котором отключена функция NDK. Событие PnP будет оставаться в ожидании, пока не будут закрыты все открытые экземпляры NDK_ADAPTER через адаптер.