有没有办法检索Windows机器上附加的所有虚拟磁盘的列表?我的意思是磁盘管理器安装VHD / VHDX的所有路径。
有一个未记录的函数GetAllAttachedVirtualDiskPhysicalPaths
正是这样做的,但它在Windows 8中不可用(仅在8.1中)。我需要Win 8支持。
由于
答案 0 :(得分:1)
我不知道直接c ++调用,假设您不知道VD句柄,但希望让所有挂载的磁盘不是由您自己的代码创建或处理的。运行
有一种粗略的方法 diskpart
list vdisk
脚本并将结果通过管道传输到文本文件中,然后可以使用c ++进行解析以获取列表。
答案 1 :(得分:0)
以下脚本将为您提供有关设备,分区(包括虚拟磁盘
)的信息试试这个
gdr -PSProvider 'FileSystem' > C:\Users\...\output2.txt
//第一部分: gdr -alias将为您提供系统中存在的“虚拟驱动器”的信息。
//后一部分:将输出重定向到文本文件
希望这有帮助
答案 2 :(得分:0)
感谢@Stacking For Heap的提示 - 通过API监控,我认为Diskpart为此目的使用了VDS API,即IVdsVdProvider
。刚刚构建并测试了代码 - 它工作正常。
这里使用了类似的方法,代码示例: