Как я могу прочитать «метку диска» или «имя тома» в .NET? - PullRequest
4 голосов
/ 16 декабря 2008

Можете ли вы показать пример кода для чтения метки диска или имени тома в .NET? Я понимаю, что для этого требуется WMI, но мне не хочется «выпадать» в WMI, потому что это все равно, что опускаться в строковый SQL-запрос в том смысле, что определенные объекты могут не существовать в определенных версиях ОС или пользователя. может не иметь права запрашивать определенные данные. Я буду счастлив убедиться, что я ошибаюсь насчет WMI ...

Ответы [ 3 ]

12 голосов
/ 16 декабря 2008

WMI не требуется. Следующие получат все метки тома:

var labels = from drive in DriveInfo.GetDrives()
             select drive.VolumeLabel
3 голосов
/ 16 декабря 2008

Вызовите DriveInfo.GetDrives, чтобы получить массив информации о диске. Тогда посмотрите на DriveInfo.VolumeLabel

1 голос
/ 16 декабря 2008

Вы можете использовать System.IO.DriveInfo, чтобы получить список дисков. Смотрите следующий пример:

Примечание. Типы приводов CDRom не имеют имени тома.

Using System.IO;
.
.
.
DriveInfo[] driveInfoList = DriveInfo.GetDrives();
foreach (DriveInfo drive in driveInfoList)
{
    if (drive.DriveType != DriveType.CDRom)
       textBox1.Text += String.Format("Name:{0} Volume:{1}\r\n", drive.Name, drive.VolumeLabel);
    else
       textBox1.Text += String.Format("Name:{0}\r\n", drive.
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...