reludson
驱动牛犊
驱动牛犊
  • 注册日期2004-01-29
  • 最后登录2014-06-22
  • 粉丝1
  • 关注0
  • 积分25分
  • 威望209点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分1分
阅读:2715回复:5

驱动程序开发步骤纪要

楼主#
更多 发布于:2011-05-20 14:22
我开始编写驱动程序,可是找了许多的资料,就是没有一个完整的,让我苦苦的折腾了将近10天,总算是研究出来了,我写出来,一来让新入驱动开发的同行们一点指示,二来让自己的研究留下一点痕迹。
 
我的系统环境如下:
 
           XP sp3 ,
 
    Visual C++6.0以及sp6
 
    [windows驱动开发包].WXPSP1DDK.ISO
 
1)安装顺序
 
    vs6++, 打上sp6的补丁,安装xpDDK
 
2)设置DDK的相关路径
 
    tool->options->directories中的参数
 
   2.1)Executable files: 加入D:\WINDDK\2600\BIN\X86
 
   2.2)Include files:加入    
 
            D:\WINDDK\2600\INC\WXP
 
            D:\WINDDK\2600\INC\DDK\WXP
 
            D:\WINDDK\2600\INC\DDK\WDM\WXP
 
            D:\WINDDK\2600\INC\CRT
 
            D:\WINDDK\2600\INC
 
  2.3)Library files:加入    D:\WINDDK\2600\LIB\WXP\I386
 
上面的设置只需要在编写驱动程序之前设置好就可以了,以后编译的时候不需设置!!!
 
 
 
3)使用vc++新建一个工程项目
 
      (project:win32 console application;  An empty project)
 
         然后可以将别人的标准驱动基本代码相关的 h与cpp文件拷贝过来,加入工程就可以。
 
4)设置工程的参数
 
-----------------------打开project->setting选项卡对话框,然后设置如下3个地方
 
    4.1)General选项卡
 
        在Microsoft Foundation Classes:中选择 “Not Using MFC”,同时在“Output directories”中设置生成的文件目录,为了和普通的应用程序区别,我们可以设置Intermediate files:与 Output files: 都是 check,同时不勾选“Allow per-configuration dependencies”
 
   4.2)C/C++选项卡
 
    将Project options中 设置为如下:
 
/nologo /Gz /MLd /W3 /WX /Z7 /Od /D WIN32=100 /D _X86_=1 /D WINVER=0x500 /D DBG=1 /Fo"Check/" /Fd"Check/" /FD /c
 
   4.3)Link选项卡
 
    将Project options中 设置为如下:(注意,将你的ouput file name:中的设置的后缀必须是.sys)
 
wdm.lib /nologo /base:"0x10000" /stack:0x400000,0x1000 /entry:"DriverEntry" /incremental:no /pdb:"Check/DriverA.pdb" /machine:IX86 /out:"Check/DriverA.sys"
 
        若你的的ouput file name:中的设置的的名字不一样,上面也有所不一样,这里,我的项目设置的名字为Check/DriverA.sys
 
 
 
5)编译
 
将上面的设置设定好后,就可以进行编译了。
 
若大家有啥问题,可以联系我,我乐意为大家服务,QQ:651983590
 
reludson
驱动牛犊
驱动牛犊
  • 注册日期2004-01-29
  • 最后登录2014-06-22
  • 粉丝1
  • 关注0
  • 积分25分
  • 威望209点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分1分
沙发#
发布于:2011-05-20 14:44
同时强烈建议初学者看一本书:Windows驱动开发技术详解
Windows驱动开发技术详解.part4.rar
Windows驱动开发技术详解.part5.rar
Windows驱动开发技术详解.part3.rar
Windows驱动开发技术详解.part2.rar
Windows驱动开发技术详解.part1.rar
 
 
comewisdom
驱动牛犊
驱动牛犊
  • 注册日期2009-12-29
  • 最后登录2011-05-28
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望41点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2011-05-20 18:52
学习学习学习............
nhkfzy
驱动牛犊
驱动牛犊
  • 注册日期2012-08-26
  • 最后登录2012-09-05
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望61点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2012-08-27 02:08
嗯确实,有一本相对入门的书有帮助
reludson
驱动牛犊
驱动牛犊
  • 注册日期2004-01-29
  • 最后登录2014-06-22
  • 粉丝1
  • 关注0
  • 积分25分
  • 威望209点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分1分
地下室#
发布于:2013-03-02 09:12
kingtomxy
驱动牛犊
驱动牛犊
  • 注册日期2013-03-08
  • 最后登录2014-04-09
  • 粉丝0
  • 关注0
  • 积分18分
  • 威望141点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2013-03-13 11:02
楼主好样的!






游客

返回顶部