WDF驱动开发- CONTEXT和IO QUEUE

28 篇文章 29 订阅 ¥9.90 ¥99.00
本文介绍了在Windows Driver Framework (WDF)中如何为设备对象创建和使用CONTEXT,以及如何创建和配置IO QUEUE。通过示例代码详细展示了如何初始化对象上下文、创建并设置IO QUEUE,以及处理默认的I/O请求。示例中,EvtIoPDPControlDevice回调函数用于处理读写请求,并展示了如何与用户模式应用程序进行交互。
摘要由CSDN通过智能技术生成

https://blog.csdn.net/zj510/article/details/16987349

WDF里面,大多数对象都支持自定义的数据,比如给设备对象创建一个context。

对象上下文

先自定义一个结构,比如

typedef struct
{
    WDFQUEUE _DefaultQueue;
}DEVICE_CONTEXT;
里面放了一个对象WDFQUEUE. 然后给设备对象创建一个上下文内存块。在使用之前先要声明一下这个结构,相当于告诉框架,我们需要使用一个context。

WDF_DECLARE_CONTEXT_TYPE(DEVICE_CONTEXT);
如果不需要context,那么可以这么初始化一个设备属性,WDF_OBJECT_ATTRIBUTES_INIT(&object_attribs);

如果需要context,那么要换个函数,WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&object_attribs, DEVICE_CONTEXT); 这样就会分配一个DEVICE_CONTEXT的内存块,并且将内存块的指针保存到WDF_OBJECT_ATTRIBUTES里面。看一下WDF_OBJECT_ATTRIBUTES的定义:

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

毛毛虫的爹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值