dawner
驱动牛犊
驱动牛犊
  • 注册日期2002-02-25
  • 最后登录2002-04-15
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1259回复:1

有事向求!!谢谢帮忙!!

楼主#
更多 发布于:2002-02-27 17:06
各位高手帮帮忙,来解决我的疑惑!
   如果给你一个硬件设备,希望通过*.sys文件来驱动它,在编写*.sys文件的时候,

   1、你需要知道硬件的一些什么信息(如I/O端口、存储器地址、中断、DMA线等)还是不需要知道?
  
   2、驱动文件(如*.sys)一般编写有一定的格式:AddDevice、Create、Close、Pnp、Power、Read、Write、DeviceControl、SystemControl等。那是不是所有的文件都有以上的几步,如果不是,那哪些是设备驱动必须要的?

   3、一个Win32应用程序怎样与*.sys交互才能使得硬件设备能够进行一定的操作?是不是通过CreateFile(打开设备)、CloseHandle(在关闭设备时,取消挂起的I/O请求)、ReadFile(从设备获得数据)、WriteFile(向设备发送数据)、DeviceControl(对用户模式或内核模式客户程序可用的控制操作)等API函数来调用,怎样调用?比如说我想向设备发送一个命令做甲事而不是做乙事,显然是向设备进行WriteFile,那我请问设备怎样区分是甲事还是乙事呢?

    4、在编写驱动文件时,我在网上看到很多开发驱动的软件,像WinDriver 、DriverStdio等工具软件,我现在想学WDM编程,能不能不用下载这些软件而只用VC6.0和DDK两种语言工具来编写,如果可以,请告诉我怎样做?
    
   鉴于上面问题很多,可能要花费你很多时间,在此我表示对你衷心感谢,谢谢你给予我支持,以使我能够继续学习,再次表示谢谢!如果来信,请寄E_MAIL:Dawner@yeah.net!
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-02-28 09:52
1. 什么总线?
2. 找本书看看,这些入门的知识很容易理解
3. 不一定非要用WriteFile。WriteFile的意思是写一些东西,如果你不是为了这个目的,用DeviceIOControl更好,IOCTL_CODE可以区分不同的请求。
4. 要用DDK写driver,书里面也讲的很清楚,也有巨多的sample。

这么多问题,只有3分,太少了吧? ;)
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
游客

返回顶部