vrmlsite
驱动牛犊
驱动牛犊
  • 注册日期2002-07-18
  • 最后登录2004-08-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:992回复:0

WDM问题

楼主#
更多 发布于:2003-02-25 11:10
请各位高手详细讲解一下在Windows2000下(是在2000下,不是98)开发WDM驱动的具体过程,从安装DDK开始讲起,如何设置,如何创建工程,如何编译,以及如何安装开发好的驱动程序(或如何创建安装程序)。最好能给出详细步骤以及注意问题。我在网上查了很多资料,看了很多书,但都讲的不够细致。希望各位能详细讲解一下具体步骤,如果过程太烦琐不好讲,则可回答以下几个问题:
1、安装完DDK之后第一件做的事是什么?(好象应该是创建环境变量吧,为什么要创建环境变量呢?如何创建?)
2、安装完DDK之后在Visual C++的File->New->Project里面会不会有新的工程项目出现?开发一个WDM驱动程序应该选择什么类型的工程?
3、要用Build实用程序将写好的源代码构建成WDM驱动程序,如何使用Build?源代码一定要放到某个目录下吗?Build之后都会生成些什么?生成的东西会放在哪里?
4、Build过程中会用到诸如makefile,SOURCE,以及.rc等文件,这些文件到底有什么用?在Visual C++下如何创建这些文件?这些文件的内容全部要自己书写吗?
5、安装写好驱动程序有两种方法,第一是使用控制面板中的添加新硬件向导,第二是自己编写一个安装程序,哪种方法更好?如果要自己写一个安装程序,如何写?安装程序主要完成什么功能?.inf文件到底有什么用?驱动程序如何与注册表相联系?安装完驱动程序后要不要重起?

以下是WDM开发过程中的具体问题,烦劳各位帮我解释一下:
1、Guidgen这个工具放在哪里?我已经为设备注册了设备接口,想在用户程序中打开这个设备,CreateFile函数的第一个参数是什么?
2、假定系统为设备分配了3个端口(设为0xF1,0xF2,0xF3),现在先用CreateFile打开该设备,这时的文件指针是否指在0xF1上?如果调用一次ReadFile,文件指针是否指在0xF2上了?ReadFile的调用,文件指针与设备端口地址它们之间有什么关系?使用ReadFile等函数与设备通信还应注意什么其他问题?
3、wdm.h与ntddk.h有什么区别?在2000下如何使用它们?

烦劳各位高手详细解释,在此先谢了!!
游客

返回顶部