从 USB 大容量存储设备 WIM 获取驱动器号

时间:2021-05-25 12:42:49

标签: c# windows wmi

我必须编写一个函数来返回所有驱动器号,其中驱动器是 U 盘。问题是 U 盘的分区方式可能是 Windows 将 2 个或更多驱动器分配给单个 U 盘,其中只有一个是 USB 大容量存储设备(这是我想要的字母)。所以像 DriveInfo.GetDrives() 然后用 device.DriveType == DriveType.Removable 过滤不起作用,因为这会返回所有可移动的驱动器。

我一直试图在 WMI 中做到这一点,但到目前为止我还没有找到正确的答案。类似问题的最常见答案是通过几个像这样的类(source)Win32_DiskDrive-> Win32_DiskDriveToDiskPartition -> Win32_DiskPartition -> Win32_LogicalDiskToPartition -> Win32_LogicalDisk 但这也会返回 U 盘的所有驱动器。我的想法是使用 Win32_USBHub 删除所有不是大容量存储设备的驱动器。但我不知道将它添加到链中的何处,或者这是否可能?有什么帮助吗?

0 个答案:

没有答案