функция обратного вызова FILTER_DEVICE_PNP_EVENT_NOTIFY (ndis.h)
NDIS вызывает функцию FilterDevicePnPEventNotify драйвера фильтра, чтобы уведомить драйвер о событиях Plug and Play устройства (PnP) и управления питанием.
Синтаксис
FILTER_DEVICE_PNP_EVENT_NOTIFY FilterDevicePnpEventNotify;
void FilterDevicePnpEventNotify(
[in] NDIS_HANDLE FilterModuleContext,
[in] PNET_DEVICE_PNP_EVENT NetDevicePnPEvent
)
{...}
Параметры
[in] FilterModuleContext
Дескриптор области контекста для модуля фильтра. Драйвер фильтра создал и инициализировал эту область контекста в функции FilterAttach .
[in] NetDevicePnPEvent
Указатель на структуру NET_DEVICE_PNP_EVENT, описывающую событие Plug and Play устройства.
Возвращаемое значение
None
Remarks
FilterDevicePnPEventNotify является необязательной функцией. Если драйвер фильтра не использует запросы PnP устройства, он может задать точке входа для этой функции значение NULL при вызовеФункция NdisFRegisterFilterDriver.
FilterDevicePnPEventNotify похож на драйвер мини-портаФункция MiniportDevicePnPEventNotify. Драйверы фильтров могут пересылать эти уведомления базовым драйверам. Чтобы переслать запрос, вызовитеФункция NdisFDevicePnPEventNotify.
NDIS вызывает FilterDevicePnPEventNotify по адресу IRQL = PASSIVE_LEVEL.
Примеры
Чтобы определить функцию FilterDevicePnPEventNotify , необходимо сначала предоставить объявление функции, определяющее тип определяемой функции. Windows предоставляет набор типов функций для драйверов. Объявление функции с помощью типов функций помогает анализу кода для драйверов, средству проверки статических драйверов (SDV) и другим средствам проверки находить ошибки, и это требование для написания драйверов для операционной системы Windows.Например, чтобы определить функцию FilterDevicePnPEventNotify с именем MyDevicePnPEventNotify, используйте тип FILTER_DEVICE_PNP_EVENT_NOTIFY , как показано в следующем примере кода:
FILTER_DEVICE_PNP_EVENT_NOTIFY MyDevicePnPEventNotify;
Затем реализуйте функцию следующим образом:
_Use_decl_annotations_
VOID
MyDevicePnPEventNotify(
NDIS_HANDLE FilterModuleContext,
PNET_DEVICE_PNP_EVENT NetDevicePnPEvent
)
{...}
Тип функции FILTER_DEVICE_PNP_EVENT_NOTIFY определен в файле заголовка Ndis.h. Чтобы более точно определить ошибки при запуске средств анализа кода, не забудьте добавить заметку Use_decl_annotations в определение функции. Заметка Use_decl_annotations гарантирует использование заметок, применяемых к типу функции FILTER_DEVICE_PNP_EVENT_NOTIFY в файле заголовка. Дополнительные сведения о требованиях к объявлениям функций см. в статье Объявление функций с помощью типов ролей функций для драйверов NDIS.
Сведения о Use_decl_annotations см. в статье Поведение функции с заметками.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Поддерживается в NDIS 6.0 и более поздних версиях. |
Целевая платформа | Windows |
Header | ndis.h (включая Ndis.h) |
IRQL | PASSIVE_LEVEL |
См. также раздел
MiniportDevicePnPEventNotifyОбратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по