макрос WDF_DECLARE_CONTEXT_TYPE
[Применимо к KMDF и UMDF]
Макрос WDF_DECLARE_CONTEXT_TYPE создает имя и метод доступа для пространства контекста для конкретного объекта драйвера.
Синтаксис
void WDF_DECLARE_CONTEXT_TYPE(
_contexttype
);
Параметры
_contexttype
Имя типа структуры определяемой драйвером структуры, описывающей содержимое пространства контекста объекта.
Возвращаемое значение
Этот макрос не возвращает значение.
Замечания
Дополнительные сведения об использовании этого макроса см. в пространстве контекста объекта Framework.
Примеры
В следующем примере кода определяется структура контекста (MY_REQUEST_CONTEXT) для объекта запроса, регистрируется структура, а затем вызывается макрос WDF_DECLARE_CONTEXT_TYPE. Макрос создает метод доступа для структуры контекста и присваивает имя WdfObjectGet_MY_REQUEST_CONTEXTметода.
typedef struct _MY_REQUEST_CONTEXT {
LIST_ENTRY ListEntry;
WDFMEMORY Memory;
} MY_REQUEST_CONTEXT, *PMY_REQUEST_CONTEXT;
WDF_DECLARE_CONTEXT_TYPE(MY_REQUEST_CONTEXT)
В следующем примере кода создается объект запроса, а затем используется метод доступа WdfObjectGet_MY_REQUEST_CONTEXT для получения указателя на пространство контекста объекта.
WDFREQUEST Request;
WDF_OBJECT_ATTRIBUTES MyRequestObjectAttributes;
PMY_REQUEST_CONTEXT pMyContext;
WDF_OBJECT_ATTRIBUTES_INIT(&MyRequestObjectAttributes);
WDF_OBJECT_ATTRIBUTES_SET_CONTEXT_TYPE(
&MyRequestObjectAttributes,
MY_REQUEST_CONTEXT
);
status = WdfRequestCreate(
&MyRequestObjectAttributes
NULL,
&Request
);
if (!NT_SUCCESS(status)) {
return status;
}
pMyContext = WdfObjectGet_MY_REQUEST_CONTEXT(Request);
Требования
Целевая платформа |
универсальные |
Минимальная версия KMDF |
1.0 |
Минимальная версия UMDF |
2.0 |
Заголовок |
Wdfobject.h (include Wdf.h) |