我正在开发附加到USB大容量存储设备的WDM筛选器驱动程序。我需要能够浏览父母和祖父母设备链(即集线器),并检查供应商和产品ID。确定连接到USB大容量存储设备的母设备链
使用IoGetDeviceAttachmentBaseRef(),我可以访问海量存储设备的PDO,但是我已经触及USB Mass Storage设备堆栈的底部。所以现在我需要访问父USB集线器堆栈,但我不知道如何做到这一点。
如果循环访问大容量存储设备的PDO中的NextDevice列表,可以看到列出的集线器的PDO,但这样做并不能告诉集线器是集群的父/祖父母储存设备。