如何通过程序删除磁盘的设备节点

时间:2019-03-29 09:38:40

标签: windows device hard-drive

我正在开发Windows程序,该程序将从Windows系统中删除指定的磁盘。
“删除”操作并不意味着“物理”拔出硬盘。
这意味着程序将从OS管理的设备节点中删除磁盘。
“磁盘”是指由disk.sys(PhysicalDrive0,PhysicalDrive1 ..)管理的磁盘。

在通常的Linux系统上,可以使用以下命令完成此操作。

echo 1 > /sys/block/sde/device/delete

我想通过程序在Windows上执行与上述相同的操作。

一旦我尝试通过在DeviceManager中删除磁盘来做到这一点。
实际上,这种方法可以删除USB磁盘,但是如果不重新引导操作系统就无法删除SATA磁盘。
我不想重新启动。

有什么办法吗?

1 个答案:

答案 0 :(得分:0)

我相信WMI可以为您提供帮助:

wmic logicaldisk delete (check with /? how to use it)

为了知道您现在拥有的,首先启动以下命令:

wmic logicaldisk list brief