VS2003+DDK2003+driverStudio3.2在XP或WIN2000下的入门步骤

本文详细介绍了如何在Visual Studio 2003环境下安装DriverStudio3.2及配套工具,并提供了具体的步骤来解决可能出现的问题。还介绍了如何通过DriverStudio创建和编译驱动程序。

        如果已经完成固件的学习,那么开始学习写驱动。

        对于对VC和WMI完全不懂的人来说,入门就用DriverStutio3.2。

       现在Visual studio都到2008了,但是公司一直用2003,而且使用2003不用装VS2005的补丁之类,没那么麻烦。

       下面是步骤

 

1.安装

   按照此顺序安装VS2003->VS2003 SP1->DDK2003 -> DriverStutio3.2

 

注意:

安装过程中,如果出现“MSIEXEC.EXE应用程序错误。。。不能为written”的对话框,先在任务管理器进程里停掉“MSIEXEC.EXE”,在运行中执行“msiexec /unregserver”。插入XP安装盘,修复XP(方法:输入CMD / 在弹出的命令行界面输入SFC/SCANNOW ,回车以后就是等待系统自动补充丢失的文件和修复损坏的文件)。然后从微软的网站下载最新的WINDOWS INSTALL,安装成功后会提示。

 

2、编译VdwLibs.dsw
安装完成后要编译DS安装目录下的Vdwlibs.dsw工程文件,具体路径是:
?:/Program Files/Compuware/DriverStudio/DriverWorks/source/VdwLibs.dsw
(1)用Vs2003打开这个工程文件,其下有两个工程:VdwLibs和NdisWdm,在VdwLibs上右键选择“设为启动项目”将这个工程设为当前工程。
(2)然后点击菜单栏上的DriverStudio –> DDK Build Settings,出现如下图的对话框:

依次点击菜单栏上的:工具->DriverStudio->DDK Build Setting…,弹出如图对话框:

 

                                  1

DDK Root Directory设置为之前安装的 DDK安装目录,在Target OS选择希望驱动运行的目标系统,并且Enable only for driverStudio or DDK C/c++ projects,然后点确定。

打开VS2003的菜单:生成-》批生成,弹出的对话框把所有含WIN32的都选上(根据自己的内核需要,如果是64位的就选64的),然后点击“重新生成”按钮,就开始编译库了。

注意:vdw_如果不进行这一步,后面的步骤就会提示缺少vdw_wdm.lib这个库文件。

 

(3)开始写自己的驱动

VS2003的菜单:工具-》DriverStudio->Driver Wizard -》start a new project一步步配置自己的驱动。

配置完成后,生成的工程文件需要进行对应于固件的修改,才可以编译。

(4)编译自己的程序

程序修改完后,右键点MyUSB的属性,在左侧的树形菜单中,选择:配置属性->链接器->输入,将附加依赖项中的ntstrsafe.lib删除。如图2

图2

打开MyUsb项目的Sources文件,如图,找到以下一行并删掉:

TARGETLIBS=$(DDK_LIB_PATH)/ntstrsafe.lib $(DDK_LIB_PATH)/csq.lib 

 

然后,点击菜单栏上的:工具->DriverStudio->Build Solution with DDK Build.exe,等待编译完成即可。

生成的驱动,inf文件在<DRIVER_PATH>/MyUsb/driver路径下,sys文件在<DRIVER_PATH>/MyUsb/driver/objchk/i386路径下。(注:DRIVER_PATH为驱动设置时的路径,下同)

DriverStudio 3.2是迄今为止最完备的驱动开发工具套件,它所提供的工具覆盖了 驱动开发的方方面面。DriverStudio套件中的所有工具都与Visual Studio IDE环 境集成在一起。开发人员可以在Visual Studio .NET 20022003环境中编写并测 试驱动程序,并且通过使用Microsoft C++编译器与Microsoft DDK完全保持兼容。 在这个版本中,所有工具的功能都得到了加强并且让开发人员可以更容易的开发优 质的驱动程序,这个版本的DriverStudio包括下列工具: DriverWorks DriverNetworks Visual SoftICE SoftICE BoundsChecker Driver Edition TrueTime Driver Edition TrueCoverage Driver Edition DriverWorks和DriverNetworks是DriverStudio的两个主要框架工具,可以提高开发 驱动程序的速度。DriverWorks简化了开发NT和WDM驱动程序的工作;DriverNetworks 则帮助开发人员毫不费力的创建和定制网络驱动程序。目前的版本可以让驱动程序 开发人员来回切换开发工具而无需改变开发环境。 DriverWorks和DriverNetworks还都提供了全新的DriverWizard,可以用C语言来创建 Windows设备驱动程序。另外,DriverWorks和DriverNetworks还为Visual Studio .NET 提供了全新的菜单和工具条,让开发人员可以使用Windows DDK编译器和链接器来build 驱动程序。 DriverWorks的类库和实例现在已经支持开发虚拟COM端口的驱动程序了。 Visual SoftICE是一个双机的系统级调试器,提供了多窗口,可配置的图形化用户界面 来帮助开发人员调试核心级的驱动程序,应用程序甚至于整个操作系统。 Visual SoftICE的最新版本在性能,功能以及用户界面上都有很大提高,其他新特性还 包括: 完全支持AMD 64位的Opteron和Athlon64处理器所提供的10个新命令: SYMLINK, DEVMGR, DP, TDIR, TMKDIR, TMOVE, TRENAME, TRMDIR, TRMFILE和TVOL。 SoftICE支持单机,用串行线连接的双机是通过TCP/IP连接的远程计算机上的核心 级和用户级的调试。在DriverStudio 3.1版本中,SoftICE可以: 支持VMware 4.0 在"DriverStudio Config"中提供了一个新的反编译选项页 符号加载器提供了改进后的新界面 BoundsChecker Driver Edition是一个错误侦测工具,可以实施分析和侦测设备驱动 程序的错误。开发人员可以马上发现并修正这些错误,不用像以前那样要在数小时后 才能完成。新增的改进还有: 开发人员修改程序设置之后无需重启计算机 让开发人员可以记录驱动程序中的user-written函数。开发人员可以清楚地看到开发 中驱动程序在运行时的情况 可以查看DriverWorkbench内置的事件页汇总信息,包括记录了多少错误和泄漏问题 提供SoftICE事件命令的新开关参数,用来标示BoundsChecker当前监视的驱动程序 改进的自旋锁(spinlock)错误侦测 TrueTime Driver Edition可以用来改善驱动程序的性能问题,它可以准确地指出导致 速度变慢的代码和性能瓶颈。在DriverStudio 3.1版本中,用户可以将两个多个测试 数据文件合并为一个,用来比较不同条件下改变代码所带来的性能提高情况。新增的改 进还有: 从系统性能计数器中收集数据 全新的"Custom Chart"为所有的函数,IRP和性能数据提供了集成可定制的显示方式 在文件系统可用之前即可开始收集性能数据 显示的数据可以导出为以逗号分割的文本文件,以备后续处理 TrueCoverage Driver Edition是一个代码辅助工具,它可以在没有源代码和符号文件的 情况下收集代码的辅助信息。驱动开发人员可以以图形化的方式查看代码结构,另外: 同时支持NMS和PDB符号文件 可以获取以下辅助数据:每个线程的基本信息,符合条件的辅助信息和部分执行的代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值