try something likeusing System;
using System.Management;class TestDrive
{ public static void Main()
{
String[] sDriveTypeList = {
/*0*/ "Unknown",
/*1*/ "No Root Directory",
/*2*/ "Removable Disk",
/*3*/ "Local Disk",
/*4*/ "Network Drive",
/*5*/ "Compact Disc",
/*6*/ "RAM Disk"};
ManagementObject mo = new ManagementObject(); mo.Path = new ManagementPath("Win32_LogicalDisk='F:'"); Console.WriteLine("Volume name:" + mo["VolumeName"].ToString());
Console.WriteLine("Volume Serial Number:" + mo["VolumeSerialNumber"].ToString());
// Console.WriteLine("Disk Type:" + mo["DriveType"].ToString());
Console.WriteLine("Disk Type:" + sDriveTypeList[Convert.ToInt32(mo["DriveType"])]);
}
}
using System.Management;class TestDrive
{ public static void Main()
{
String[] sDriveTypeList = {
/*0*/ "Unknown",
/*1*/ "No Root Directory",
/*2*/ "Removable Disk",
/*3*/ "Local Disk",
/*4*/ "Network Drive",
/*5*/ "Compact Disc",
/*6*/ "RAM Disk"};
ManagementObject mo = new ManagementObject(); mo.Path = new ManagementPath("Win32_LogicalDisk='F:'"); Console.WriteLine("Volume name:" + mo["VolumeName"].ToString());
Console.WriteLine("Volume Serial Number:" + mo["VolumeSerialNumber"].ToString());
// Console.WriteLine("Disk Type:" + mo["DriveType"].ToString());
Console.WriteLine("Disk Type:" + sDriveTypeList[Convert.ToInt32(mo["DriveType"])]);
}
}
.class Sample_ManagementObject{ public static int Main(string[] args)
{
SelectQuery query=new SelectQuery("Select * From Win32_LogicalDisk");
ManagementObjectSearcher searcher=new ManagementObjectSearcher(query); foreach(ManagementBaseObject disk in searcher.Get())
{
Console.WriteLine("\r\n"+disk["Name"] +" "+disk["DriveType"] + " " + disk["VolumeName"]);
}
Console.ReadLine(); return 0; }}disk["DriveType"] 的返回值意义如下:1 No type
2 Floppy disk
3 Hard disk
4 Removable drive or network drive
5 CD-ROM
6 RAM disk
--------------------
只是在我计算机上的计算结果:
C: 3D: 3E: 5 SQL2000PER_CN