WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE 宏
[适用于 KMDF 和 UMDF]
WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE宏初始化驱动程序的WDF_OBJECT_ATTRIBUTES结构,并将对象的驱动程序定义的上下文信息插入到结构中。
语法
void WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(
_attributes,
_contexttype
);
参数
_属性
指向 WDF_OBJECT_ATTRIBUTES 结构的指针。
_contexttype
驱动程序定义的结构的结构类型名称,该结构描述对象的上下文空间的内容。
返回值
此宏不返回值。
注解
调用 WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE之前,必须全局调用 WDF_DECLARE_CONTEXT_TYPE 或 WDF_DECLARE_CONTEXT_TYPE_WITH_NAME (不在函数) 中。
WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE宏将 WDF_OBJECT_ATTRIBUTES_INIT 函数和 WDF_OBJECT_ATTRIBUTES_SET_CONTEXT_TYPE 宏组合在一起。
示例
下面的代码示例定义WDM_NDIS_REQUEST上下文结构。 然后,该示例调用 WDF_DECLARE_CONTEXT_TYPE_WITH_NAME 宏来注册 结构,并指定上下文访问器方法将命名为 RequestGetMyContext。 然后,在 函数中,该示例分配一个 WDF_OBJECT_ATTRIBUTES 结构,然后初始化 WDF_OBJECT_ATTRIBUTES 结构。
typedef struct _WDM_NDIS_REQUEST
{
PMP_ADAPTER Adapter;
NDIS_OID Oid;
NDIS_REQUEST_TYPE RequestType;
PVOID InformationBuffer;
ULONG InformationBufferLength;
PULONG BytesReadOrWritten;
PULONG BytesNeeded;
} WDM_NDIS_REQUEST, *PWDM_NDIS_REQUEST;
WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(WDM_NDIS_REQUEST, RequestGetMyContext);
// above are in global space
...
WDF_OBJECT_ATTRIBUTES attributes;
WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE( &attributes, WDM_NDIS_REQUEST );
要求
目标平台 |
通用 |
最低 KMDF 版本 |
1.0 |
最低 UMDF 版本 |
2.0 |
标头 |
Wdfobject.h (包括 Wdf.h) |