Finding the hardware device (USB) given the filesystem device.

I am using OSR’s FDDK, and on file system mount we get a callback with the device object of the new filesystem being mounted.

I have had difficulty trying to find device attributes associated with, for example, USB keys. Things like “FriendlyName”. I have used IoGetDeviceProperty asking for DevicePropertyFriendlyName.

I realized this is probably not the correct device object for this as I need the storage object. I have tried cross referencing the mount drive letter through its symbolic link (\Global??\F:) to a device - but still cannot find this properly.

I can clearly see it in the registry. I have even tried some calls to IoGetAttachedDevice and looked into the RealDevice in the Vpb.

None of these methods yield any useful information. I am really looking for friendly name, vendor, serial number, and other properties of these removable device types.

Any help pointing me in the right direction would be appreciated.

-Rich Riendeau