我的理解:一个驱动创建一个设备(通过AddDevice例程创建的,通过其它方式创建的另说),它被系统认定为什么类型的设备应该是受class和classGUID决定的。比如:inf中有如下信息:[Version]Signature="$WINDOWS NT$"C...
全文
回复(6) 2010-04-20 08:22 来自版块 - 非USB硬件驱动开发
表情
danxuezx这个是可以实现的,VScsiDisk就是这么做的。它只有一个驱动,创建了两个不同类型的设备: FILE_DEVICE_BUS_EXTENDER和FILE_DEVICE_DISK,并且并没有给FILE_DEVICE_DISK类型的设备提供驱动程序。发往FILE_DEVICE_DIS...(2010-04-21 17:30)
nudtsong我觉得这个要求好像难以实现,一般都是一个驱动(包括inf文件)对应一种设备(可以是多个)。 请大牛们给一个明确的结论吧。(2010-04-21 11:55)
danxuezx是这样的,一个是在AddDevice中创建的,另外一个是在提供的IoCtrol中创建的。(2010-04-20 13:31)
nudtsong楼主是不是想用一个驱动创建出两个不同类型的设备?(2010-04-20 11:25)
danxuezx是这样的,我的驱动程序在装载后会创建一个设备A,它的类型是FILE_DEVICE_BUS_EXTENDER。并且它提供了一个IOCtrl。 然后由另外一个应用程序,它会调用此驱动程序,向其发送自定义的IOCtrl,当驱动程序接收到此IOCtrl后,会创建另外一个设备B,它的类型是...(2010-04-20 09:44)
nudtsong驱动程序与普通的应用程序不同,它的体系结构、外部接口和调用方式都是操作系统决定的,不能随意改变。如果驱动不首先创建一个设备,那么用户态的程序就没法发送IOCtrol请求。正如不先创建一个文件,就没办法读写它一样。(2010-04-20 09:25)

返回顶部