我能知道C#中有多少个分区及其名称吗?

我能知道C#中有多少个分区及其名称吗?,c#,C#,我需要从.NET中的应用程序中识别驱动器是否具有特定的非Windows分区。这能从C#得到吗?从逻辑上讲,我只需要知道分区是否存在,我不需要读入它 非常感谢。我自己没有尝试过,但是System.Management.ManagementObject类及其相关类型允许您访问WMI功能。以下WMI类型之一 Win32_DiskDrive Win32_DiskPartition Win32_LogicalDisk 可能可以完成这项工作。以下是一些原型C#类,让您开始学习: 如何:(几乎)通过C#实现

我需要从.NET中的应用程序中识别驱动器是否具有特定的非Windows分区。这能从C#得到吗?从逻辑上讲,我只需要知道分区是否存在,我不需要读入它


非常感谢。

我自己没有尝试过,但是
System.Management.ManagementObject类及其相关类型允许您访问WMI功能。以下WMI类型之一

Win32_DiskDrive
Win32_DiskPartition
Win32_LogicalDisk
可能可以完成这项工作。

以下是一些原型C#类,让您开始学习:

如何:(几乎)通过C#实现WMI中的所有功能-第3部分:硬件

还有一点:

基于,我假设您可以使用上面建议的System.Management。使用Win32_DiskPartition键可以计算返回的分区数。差不多

ManagementObjectSearcher mos = new ManagementObjectSearcher("select * from " + "Win32_DiskPartition");
ManagementObjectCollection moc = mos.Get();

MessageBox.Show("Number of partitions" + moc.Count);