阅读:2010回复:12
请问,DS十分钟开发出的的USB驱动如何应用到实际中?
我按《DS10分开发一个USB驱动》做了一个TEST出来后,不知如何应用,里面有个TEST。EXE的应用程序,要怎么用啊,还有那个SYS文件夹,是不是要用VC++转成。SYS文件才能用呢?
请大侠打救啊~~~~ [编辑 - 6/5/03 by Pcidler_Beny] |
|
最新喜欢:![]() |
沙发#
发布于:2003-06-06 11:18
有没有人教教我怎么使用啊,救命啊~~~ :(
TEST里面有个文件夹里有个I386的文件夹,里面有个TEST_test.exe的程度,我要怎么样才能使这个Test_test可以运行? |
|
板凳#
发布于:2003-06-06 17:32
首先,做usb driver,如果没有硬件和相应的driver,没有办法深入研究。也就是说,你必须要有硬件,然后把test.sys的源代码改成和这个硬件配合,才可以运行起来。
曾经有人说可以不用硬件来玩儿usb,不知道是否成功? :) |
|
|
地板#
发布于:2003-06-06 21:28
首先,做usb driver,如果没有硬件和相应的driver,没有办法深入研究。也就是说,你必须要有硬件,然后把test.sys的源代码改成和这个硬件配合,才可以运行起来。 首先,多谢版主的回答! 我有U盘,那我就要做成U盘的USB DRIVER,然后再来深入研究,是这样吗? 还有,我想问一下,做出来的源代码,如SYS文件夹里面的,如何用VC等编译器生成*.sys的WDM文件呢?微软里给出的USB设备驱动程UMSS。EXE里面有个PDR文件夹,那也要用什么来让它生成*.pdr文件呢? INF文件里面的一部分如下: ; Indicate that the device uses the BULK ONLY protocol [bulkonly.addreg.HW] HKR,,DeviceProtocol,0x10001,50 ; Install the port driver [UFPDR.install] AddReg=UFPDR.addreg 那是不是说,PDR文件是用来设置 BULK ONLY protocol的? |
|
地下室#
发布于:2003-06-07 22:58
如果你是第一次写driver,那u盘的driver对你来说就有不小难度了,这个driver并不适合新手。
怎样编译dw的wizard生成的source,应该去看dw的帮助。 umss是9x的driver,一个是port driver,一个是usb driver(wdm);dw做出来的是单纯的kmd或者wdm。port driver是加载在storage里面的ios中的,负责文件/block device的读写,包括你在explorer里面看到的drive letter;usb driver是和u盘直接打交道的,它负责转换port driver和u盘之间的通讯。 |
|
|
5楼#
发布于:2003-06-07 23:50
如果你是第一次写driver,那u盘的driver对你来说就有不小难度了,这个driver并不适合新手。 你说的话太有道理了,我是一个新手,用了一个月,学U盘的DRIVER开发,但做不下去,那老师就叫我做简单点的。 我按DS里面的例子做出了TEST的USB驱动,现在要在这个TEST的驱动基础上控制那个LED的亮和灭,请问要作大的改动吗?我如果把程序改好后是不是直接运行那个TEST.exe就可以控制那个灯了? |
|
6楼#
发布于:2003-06-08 00:43
TEST.doc里面有提到“由于DriveStudio由几个部分组成,我们写这个驱动程序只要用到DriverWorks,因此下面我们就简称它为DW。在这里,我们假定读者已经正确的安装了DW,并且已经编译好了各个库文件。”,其中里面指“已经编译好了各个库文件”,是指哪些?
\"首先,做usb driver,如果没有硬件和相应的driver,没有办法深入研究。也就是说,你必须要有硬件,然后把test.sys的源代码改成和这个硬件配合,才可以运行起来。\"――如果我有U盘,它的驱动也安装了,还可以用这个TEST程序(驱动)来控制U盘的灯亮和灭吗? |
|
7楼#
发布于:2003-06-09 00:54
版主或好心人教一教我吧,急啊~~~~现在用VC编译不成功啊~~~~
|
|
8楼#
发布于:2003-06-09 03:01
晚上我用VC编译TEST时,DEBUG项通过了,但FREE和RELEASE项有错误,是“TESTDEVICE是未定义的类”。
问题:如果我运行DEBUG产生的TEST_TEST.EXE,可以做到控制灯的亮灭吗?如果不行,在哪部分要作修改,我用的是U盘设备! 版主(或好心人)可以教一下我吗? |
|
9楼#
发布于:2003-06-09 23:51
我们这里讨论的,包括test.sys都是usb client driver,也就是功能驱动。u盘有自己的驱动,test.sys根本不可能代替u盘的驱动!这点如果你都搞不清楚,是没有办法做下去的!
你要想用test.sys控制一个设备的led,就必须知道他的通讯协议,也就是说,这个设备必须有个通讯协议是可以控制led的。你的u盘有这个功能吗?你知道这个协议吗?如果不知道,怎么做? |
|
|
10楼#
发布于:2003-06-10 01:10
我们这里讨论的,包括test.sys都是usb client driver,也就是功能驱动。u盘有自己的驱动,test.sys根本不可能代替u盘的驱动!这点如果你都搞不清楚,是没有办法做下去的! 先诚心谢过版主回复我的问题! :) U盘的驱动装左后,还可以用这个test.sys驱动吗?我的U盘有个灯,装了驱动后就会长亮,当读写U盘时,灯会闪烁不断,删除设备后灯就不亮,那这U盘支不支这个功能协议呢? 现在我用一个10欧的电阻串联一个二极管,作为一个USB设备,通过USB延长线接入电脑,这样可行吗?这样可以用上那个TEST的驱动吗?是不是要添加一些应用程序,例如在生成框架的过程中,设置以下几种功能: 1.端点输入 2.端点输出 3.IOCTL 或写应用程序,用一个函数DeviceIoControl(hDevice,xxxx, 0,0,0,0,&nReturnBytes,NULL)调用等 [编辑 - 6/10/03 by Pcidler_Beny] [编辑 - 6/10/03 by Pcidler_Beny] |
|
11楼#
发布于:2003-06-15 11:01
> U盘的驱动装左后,还可以用这个test.sys驱动吗?
除非test.sys是filter driver。 > 我的U盘有个灯,装了驱动后就会长亮,当读写U盘时,灯会闪烁不断,删除设备后灯就不亮,那这U盘支不支这个功能协议呢? 和上面一样:去问做u盘的人! > 现在我用一个10欧的电阻串联一个二极管,作为一个USB设备,通过USB延长线接入电脑,这样可行吗? usb设备就这么简单?! |
|
|
12楼#
发布于:2003-06-15 13:15
用两根线接一个灯和一个电阻不是一个USB设备,这点可弄明了;只是想对这样的设备设计一个接口模块,可以用LED控制的原理来控制这样的设备。但目前以我的水平很难实现这个功能模快!
对U盘的协议不是十分了解,还要请版主多加指点~~ :) > U盘的驱动装左后,还可以用这个test.sys驱动吗? 除非test.sys是filter driver。{这一点多谢版主指教啊!} |
|