驱动学习
文章平均质量分 85
ms2146
这个作者很懒,什么都没留下…
展开
-
VS2008+DDK(3790.1830)+ddkwizard搭建驱动开发环境
所谓万事开头难,一切对于新手都是那么的复杂而庞大,在高手门看来是很简单的东西,却可以让新手们头疼几天,其中我就是这样。开始接触驱动的时候,光是搭建开发环境就折腾了好几天,最后仍没有一个很好的解决方案,不过,还是不要太依赖于工具,这样这失去了动手能力的意义,下面说一下VS2008+DDK(3790.1830)+ddkwizard搭建驱动开发环境。 1:首先先下载vs2008并安装,原创 2009-12-17 11:38:00 · 4112 阅读 · 1 评论 -
IoSetCompletionRoutine函数(转载)
IoSetCompletionRoutine宏注册一个IO完成例程,这个完成例程将会在调用此函数的驱动的下一层驱动完成IRP指定的操作请求时被调用。 void IoSetCompletionRoutine( IN PIRP Irp, IN PIO_COMPLETION_ROUTINE CompletionRoutine, IN PVOID Cont转载 2009-12-18 13:48:00 · 1051 阅读 · 0 评论 -
设置下层IPR IO堆栈内容
在下发IRP到底层驱动处理前,本层驱动必须负责设置下层IO堆栈的内容。这样下一层驱动调用IoGetCurrentIrpStackLocation()时能得到相应的数据。设置下层IO堆栈的内容,一般用两个函数来实现:IoCopyCurrentIrpStackLocationToNext( Irp ) 此函数一般用在本驱动设置了完成例程时调用,把本层IO _STACK_LOCATION 中的原创 2009-12-18 14:30:00 · 776 阅读 · 0 评论 -
内核事件通知(转载)
本文作者是楚狂人。有问题请联系QQ16191945,msn walled_river@hotmail.com 使用事件通知 一些读者可能熟悉“事件驱动”编程技术。但是这里的“事件”与之不同。内核中的事件是一个数据结构。这个结构的指针可以当作一个参数传入一个等待函数中。如果这个事件不被“设置”,则这个等待函数不会返回,这个线程被阻塞。如果这个事件被“设置”,则等待结束,可以继续下去。转载 2009-12-24 09:44:00 · 1824 阅读 · 0 评论 -
键盘过滤驱动
在笔者接触驱动到现在以来一以后大半个月的时间,从中让我深深的体会到了万事开头难,以及学习持之以恒的重要性。笔者也是个驱动新人,开始接触驱动的时候看着张帆的《Windows驱动开发技术详解》讲的挺细,对新手来说是个不错的学习资料,但是更重要的还是自己要多动手练习,笔者在学习到同步操作的相关知识的时候,实在是看天书。最后还是放弃了学习本书。再找了本楚狂人的资料学习,感觉本书对新手来说还是比较吃力的,其原创 2009-12-21 21:32:00 · 6227 阅读 · 4 评论