функция обратного вызова WUDF_WORKITEM_FUNCTION (wudfworkitem.h)
[ предупреждение: UMDF 2 является последней версией UMDF и заменяет UMDF 1. Все новые драйверы UMDF должны быть написаны с помощью UMDF 2. Новые функции не добавляются в UMDF 1, а поддержка UMDF 1 в более новых версиях Windows 10 ограничена. Универсальные драйверы Windows должны использовать UMDF 2. Дополнительные сведения см. в разделе Начало работы с UMDF.]
Функция обратного вызова событий драйвера OnWorkItem выполняет работу, связанную с указанным рабочим элементом.
Синтаксис
WUDF_WORKITEM_FUNCTION WudfWorkitemFunction;
void WudfWorkitemFunction(
[in] IWDFWorkItem *pWorkItem
)
{...}
Параметры
[in] pWorkItem
Указатель на интерфейс IWDFWorkItem.
Возвращаемое значение
Никакой
Замечания
Чтобы зарегистрировать функцию обратного вызова OnWorkItem, драйвер должен поместить адрес функции обратного вызова в структуру WUDF_WORKITEM_CONFIG перед вызовом IWDFDevice3::CreateWorkItem.
Как правило, функция обратного вызова драйвера OnWorkItem выполняет задачи, заданные данными, которые драйвер хранится в памяти контекста объекта рабочего элемента.
Драйвер не должен вызывать IWDFObject::D eleteWdfObject из функции обратного вызова OnWorkIte m.
Дополнительные сведения см. в разделе Использование рабочих элементов.
Примеры
Тип функции объявлен в Wudfworkitem.h, как показано ниже.
typedef
VOID
WUDF_WORKITEM_FUNCTION(
_In_
IWDFWorkItem* pWorkItem
);
typedef WUDF_WORKITEM_FUNCTION *PFN_WUDF_WORKITEM;
Чтобы определить функцию обратного вызова OnWorkItem, которая называется MyWorkItem, сначала необходимо указать объявление функции, требующее SDV и других средств проверки, как показано ниже.
WUDF_WORKITEM_FUNCTION MyWorkItem;
Затем реализуйте функцию обратного вызова следующим образом:
VOID
MyWorkItem (
_In_
IWDFWorkItem* pWorkItem
)
{…}
Требования
Требование | Ценность |
---|---|
завершение поддержки | Недоступно в UMDF 2.0 и более поздних версиях. |
целевая платформа | Настольный |
минимальная версия UMDF | 1.11 |
заголовка | wudfworkitem.h |