WdfObjectGetTypedContext 宏
[适用于 KMDF 和 UMDF]
WdfObjectGetTypedContext 宏返回指向对象的上下文空间的指针。
语法
PVOID WdfObjectGetTypedContext(
Handle,
Type
);
参数
Handle
框架对象的句柄。
类型
描述对象的上下文空间的驱动程序定义结构的符号名称。
返回值
WdfObjectGetTypedContext 返回指向指定对象的上下文空间的指针。
注解
可以使用 WdfObjectGetTypedContext 宏获取指向任何框架对象的上下文空间的指针。 使用此宏作为调用由WDF_DECLARE_CONTEXT_TYPE宏或 WDF_DECLARE_CONTEXT_TYPE_WITH_NAME 宏创建的特定于对象的上下文访问器 方法的替代 方法。 请注意,如果使用 WdfObjectGetTypedContext,则仍必须使用 WDF_DECLARE_CONTEXT_TYPE 或 WDF_DECLARE_CONTEXT_TYPE_WITH_NAME 来声明对象上下文。
有关这些宏的详细信息,请参阅 框架对象上下文空间。
示例
下面的代码示例定义请求对象的上下文结构 (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)
下面的代码示例创建一个请求对象,并获取指向其上下文空间的指针。
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 = WdfObjectGetTypedContext(
Request,
MY_REQUEST_CONTEXT
);
要求
目标平台 |
通用 |
最低 KMDF 版本 |
1.0 |
最低 UMDF 版本 |
2.0 |
标头 |
Wdfobject.h (包括 Wdf.h) |
库 |
Wdf01000.sys (KMDF) ;WUDFx02000.dll (UMDF) |
IRQL |
任何级别 |