2012-01-06 89 views

回答

0

您可以开始与C#DriveInfo类:

DriveInfo[] allDrives = DriveInfo.GetDrives(); 

    foreach (DriveInfo d in allDrives) 
    { 
     Console.WriteLine("Drive {0}", d.Name); 
     Console.WriteLine(" File type: {0}", d.DriveType); 
     if (d.IsReady == true) 
     { 
      Console.WriteLine(" Volume label: {0}", d.VolumeLabel); 
      Console.WriteLine(" File system: {0}", d.DriveFormat); 
      Console.WriteLine(
       " Available space to current user:{0, 15} bytes", 
       d.AvailableFreeSpace); 

      Console.WriteLine(
       " Total available space:   {0, 15} bytes", 
       d.TotalFreeSpace); 

      Console.WriteLine(
       " Total size of drive:   {0, 15} bytes ", 
       d.TotalSize); 
     } 
    } 

http://msdn.microsoft.com/en-us/library/system.io.driveinfo.aspx

或这可能会有帮助:

Get List of connected USB Devices

+2

Compact Framework中没有'DriveInfo'类。 – ctacke 2012-12-19 17:31:51

0

文件夹名称本地化,因此改变从设备到设备。我这样做的方式是从驱动程序用于获取名称的相同注册表位置查询它:

using(var key = Registry.LocalMachine.OpenSubKey(
       @"\System\StorageManager\Profiles\USBHDProfile")) 
{ 
    USBDiskFolderName = key.GetValue("Folder").ToString(); 
} 
+0

它显示名称为'可移动磁盘'。我想要的是;如果我已经命名usb说“Anant”,那么这个名字应该被检测到,因为它是Anant。但它总是显示'可移动磁盘'。我的查询是做平台的系统映像在这里做的一部分;它向用户显示的方式呢? – Anant 2012-12-26 12:16:06

+0

因此,您想要更改装入文件夹的名称,或者您是否在格式化时尝试将标签分配给驱动器?当您构建操作系统映像时,安装的文件夹名称会被设置。 – ctacke 2012-12-26 13:28:06

+0

是的,我试图在格式化时将标签名称分配给驱动器。 – Anant 2012-12-31 06:36:14

相关问题