版块
论坛
喜欢
话题
应用
搜索
登录
注册
danxuezx的个人空间
访问量
1
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=204891
各位驱动达人恳请给指点迷津
我的理解:一个驱动创建一个设备(通过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)
回复
danxuezx
加关注
写私信
0
关注
0
粉丝
60
帖子
返回顶部