小弟初学驱动程序开发,虽然手上有一些资料不过好像是完全的驱动程序开发过程,太麻烦了,也太难了。听说有一种通用驱动程序好像叫unidriver编写起来比较简单,不过哪有这些资料呀,或者简单说一说怎么回事,怎样个流程。
    而且,我找了一些驱动程序的例子,怎么没有入口点DriverEntry呀,他们好像是编写成DLL的,那他们的入口点是什么,又怎么工作呀。
    小弟在线等待,高手指点指点

解决方案 »

  1.   

    我刚刚完成一个驱动程序的开发,也是现学现卖,花了我一个多月时间,刚开始的时候我也是对驱动程序的开发一点概念都没有,搞得我晕头转向,不过深入自己编写了以后,结构也总算弄明白了。 我用的WDM模型结合Win2000 DDK开发的! 谈一下我的经验吧或者说是体会吧 ;)
        1、对你将要开发的硬件一点要有所了解,比如它使用了Windows的哪些资源(端口、中断、内存、DMA等)。我是吃了这个的大苦,当初由于对待开发的硬件不是很了解,到了最后关头结果说那块硬件并不是运用到那个系统的、对我上面的应用程序要使用的的命令不支持,结果只好换了一张那块硬件的升级版,幸好是升级版所以对改动不是很大;
        2、最好采用DDK开发,而不要用WinDriver、DriverWorks等开发工具,这样对真正掌握驱动程序的开发有好处;
        3、在驱动程序尽量采用KdPrint等打印结果以便调试;
        4、使用SoftICE进行驱动程序的调试。
        5、找一本介绍驱动程序开发的书籍,比如《Programming WDM》、《WDM驱动程序开发》(好象是叫这个名字,是机械出版社的)等
        6、最后也是最重要的一点,一定要有耐心,因为驱动程序的开发经常会导致机器重启等烦人的事情!    希望上面几点体会对你能有所帮助!!!
      

  2.   

    搞驱动开发确实有些难,记得我那回搞驱动的时候把2000搞瘫了N次,我觉得学习的时候应该从DDK开始,以后开发的时候应该用WinDriver、DriverWorks,我听人家说用WinDriver、DriverWorks开发驱动简单,可是我已开始学习他的时候什么都看不懂,最后还是转向去学习DDK,
      

  3.   

    既然是DLL那么它与一般的DLL应该差不多,我觉得学一块知识主要是屡清思路,分析程序应该是安程序逻辑走,希望你成功
      

  4.   

    在95、98下面可以用VXD,开发起来要快得多。
    当然最好是用WDM了,毕竟这是微软现在推荐的模型。