阅读:1101回复:1
U盘Pnp通关
我编写了一个USB移动磁盘驱动程序VirtualMass.sys,代替win2k下的USBSTOR.sys。Pnp过程如下(不妨将USBSTOR.sys或VirtualMass.sys称为“u盘总线驱动”,将Disk.sys称为“U盘”驱动,“u盘”是挂在“u盘总线”上的Child----我的理解应该没错吧?):
1.插入u盘后,系统可以枚举到我的设备,且安装了我的驱动VirtualMass.sys。不妨将这次安装的FDO称为\"U盘总线\"FDO。 2.接着,将进行一系列的FDO Pnp。在FDO的IRP_MN_QUERY_DEVICE_RELATIONS中,我用IoCreateDevice创建了一个“U盘”PDO,并已经成功返回给系统。 3.开始PDO的Pnp。一路小跑到四次IRP_MN_QUERY_ID后,安装过程结束。但只看见我的“u盘总线”上挂了一个“未知设备”,也就是说根本没给我装disk.sys。 大侠们给我指点一下谢谢!是IRP_MN_QUERY_ID的响应出了问题还是别的? |
|
沙发#
发布于:2003-03-11 21:52
我插入的是一个正常的u盘。
usbstor.sys到底怎么样让系统知道,挂在它上面的是disk.sys, 而不是其他? 我的virtualmass.sys是参考dazzy兄的那篇usb storage文章编写的,其pnp部分是根据ddk的bus driver编写的。 非常紧急,希望知情大侠出手相救!谢谢!! |
|