Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   [решено] Метка тома (http://forum.oszone.net/showthread.php?t=186062)

Efsey 21-09-2010 08:57 1500483

Метка тома
 
Доброго времени суток. Подскажите способ вытащить метку тома, съемного диска, и их типы на C#.

Delirium 21-09-2010 09:43 1500519

Efsey, скачайте WMI Code Creator
- сбор данных о компьютере и системе, получение сетевых параметров и другие возможности (локально и удаленно). Программа создает готовый исходный код на VBSCRIPT, C#, VB.NET.

Открываем, выбираем в верхнем списке root\CIMV2, в поле classes - Win32_DiskDrive и внизу будет список свойств. Выбираем любое, жмем "Search for properties..". Получаем ответ. В окне справа будет готовый код. В верхнем меню выбираем нужный язык(С#).

Efsey 21-09-2010 13:08 1500646

Спасиб, вот только не могу понять как перевести этот код с консоли хотя бы на лабел.текст

Код:

foreach (ManagementObject queryObj in searcher.Get())
                {
                    Console.WriteLine("-----------------------------------");
                    Console.Write("Label: {0}", queryObj["Name"]);
                    Console.WriteLine(queryObj["Label"]);


LilLoco 21-09-2010 13:36 1500677

А почему бы просто не воспользоваться DriveInfo, через него можно узнать необходимую информацию!

Например :

Код:

using System.IO;
..........................
DriveInfo DI = new DriveInfo("C:\\");
string Type = DI.DriveType //тип диска
string Name = DI.Name; //имя диска
string LabelName = DI.VolumeLabel; //метка тома
.........................

Ну и выводить куда вздумается, будь то листбокс или текстбокс!

Efsey 21-09-2010 13:53 1500700

LilLoco, что там нужно еще прописать, кроме using System.IO; ? А то у меня на str ругается.

LilLoco 21-09-2010 13:58 1500707

ой ой ой!!! Совсем у меня крыша поехала :lol: :lol: :lol: Там не str а тип string! простите пожалуйста!

Efsey 21-09-2010 14:04 1500714

Тут есть еще одна задачка, это перечисление все доступных дисков

LilLoco 21-09-2010 18:14 1500932

все доступные диски можно взять так(например добавляем в листбох):
Код:

string[] Drives = Environment.GetLogicalDrives();
foreach (string Drive in Drives)
{
      listBox1.Items.Add(Drive);
}

Выведется список всех дисков!!!

Delirium 22-09-2010 01:01 1501244

Я привел унифицированный пример, позволяющий выловить кучу информации как с локального, так и с удаленного компьютера.
Цитата:

Цитата Efsey
не могу понять как перевести этот код с консоли хотя бы на лабел.текст
Код:
foreach (ManagementObject queryObj in searcher.Get())
{
Console.WriteLine("-----------------------------------");
Console.Write("Label: {0}", queryObj["Name"]);
Console.WriteLine(queryObj["Label"]); »


Код:

TextBox1.Text = queryObj["Name"].ToString();
TextBox2.Text = queryObj["Label"].ToString();



Время: 19:38.

Время: 19:38.
© OSzone.net 2001-