注册 | 登录 忘记密码? 51cto首页 | 博客 | 论坛 | 招聘
热点文章 子域部署Exchange服务器详..
 帮助

关于设备扩展(DeviceExtention)的作用


2008-05-03 09:46:13
 标签:DeviceExtention DDK   [推送到技术圈]

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://laokaddk.blog.51cto.com/368606/74622
刚学DDK时对DeviceObject中的DeviceExtention指针的作用不是很清楚.
DeviceExtention是DeviceObject结构中的一个PVOID指针.
 
DeviceExtention的作用是可以自定义一个结构,存入一些你所要的变量,
比如说KEVENT ,DriverObjet等.
因为DeviceExtention是PVOID指针,故可以通过强制类型转换转换你所定义的结构.
 
此时你可以会问,这个自定义结构所占的内存空间是在什么时候分配的?
答案是:IoCreateDevice()函数中一个参数是sizeof(Your_DeviceExtention),
哈哈,明白了不,就是要通知IoCreateDevice你定义的结构占多少空间,
要是没有定义那就是0了.
 
分配的格局为:
 DeviceObject主体
占sizeof(DeviceObject)
 DeviceExtention所占用空间
点sizeof(DeviceExtention)
字节
 
 
 
小样,现在明白了吗,  DeviceExtention就是自定义的结构,用于存放一些你所关心的变量.
 
OK,Go ahead!
 
 

本文出自 “LaoKa” 博客,请务必保留此出处http://laokaddk.blog.51cto.com/368606/74622



上一篇 汉书导读 



    文章评论
 
 

发表评论

昵   称:
验证码:  点击图片可刷新验证码  博客过2级,无需填写验证码
内   容: