【发布时间】:2016-02-11 10:11:51
【问题描述】:
虚拟是指使用 SUBST cmd 创建的 例如 SUBST Z: C:\SomeFolder\OtherFldr
我可以在 WMI 中找到的最佳方法是利用虚拟驱动器不会与分区关联这一事实。
即当:
ASSOCIATORS OF {Win32_LogicalDisk.DeviceID='C:'}
WHERE AssocClass=Win32_LogicalDiskToPartition
将为C: 返回相关的Win32_DiskPartition 行
ASSOCIATORS OF {Win32_LogicalDisk.DeviceID='Z:'}
WHERE AssocClass=Win32_LogicalDiskToPartition"
不会返回任何内容。
有人知道更好的方法吗?
我的项目使用 C++,但欢迎使用 C#、VBS、PowerShell 的建议,因为主体通常是相同的。
【问题讨论】:
-
它必须是WMI吗?你可以使用
QueryDosDevice(msdn.microsoft.com/en-us/library/windows/desktop/…) -
不一定是 WMI。我正在为 WMI 提供我需要的一切的每个磁盘收集一组信息。虽然我所做的工作是将磁盘检测为虚拟磁盘,但我感觉应该有一种更直接的方法,例如我看过的某个表中的某些列。