Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как получить список локальных дисков? 
V
    Опции темы
padla
Дата 25.6.2006, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 25.6.2006
Где: Москва

Репутация: нет
Всего: нет



См. сабж.

В System.IO определены классы для файлов и папок. А как работать с локальными дисками? 
PM MAIL ICQ   Вверх
mr.DUDA
Дата 25.6.2006, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



DriveInfo.GetDrives() вернёт массив объектов DriveInfo, для локальных дисков DriveType равен CDRom, Fixed или Removable, для сетевых - Network. 


--------------------
user posted image
PM MAIL WWW   Вверх
padla
Дата 25.6.2006, 18:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 25.6.2006
Где: Москва

Репутация: нет
Всего: нет



Мерси! 
PM MAIL ICQ   Вверх
mr.DUDA
Дата 25.6.2006, 19:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



боку smile 


--------------------
user posted image
PM MAIL WWW   Вверх
padla
Дата 25.6.2006, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 25.6.2006
Где: Москва

Репутация: нет
Всего: нет



Вопрос сюда же:
как (Removable) Usb отличить от FDD???? 
PM MAIL ICQ   Вверх
Prehistorik
Дата 26.6.2006, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 146
Регистрация: 30.5.2006
Где: СПб

Репутация: 2
Всего: 3



Может быть просто по имени?! FDD обычно на A: ...

 smile 

padla, тем что Removable используется, а FDD уже давным давно нет :-) 
--------------------
Есть только один бог - Ассемблер, и С - пророк его. 
PM MAIL   Вверх
mr.DUDA
Дата 26.6.2006, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



А для этого уже System.Management юзать надо и Win32_LogicalDisk WMI class 


--------------------
user posted image
PM MAIL WWW   Вверх
padla
Дата 26.6.2006, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 25.6.2006
Где: Москва

Репутация: нет
Всего: нет



mr.DUDA, ОК, пошерстим...


Prehistorik, Все дебаты по поводу используется FDD еще или же нет - в раздел о железе! 
PM MAIL ICQ   Вверх
padla
Дата 26.6.2006, 17:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 25.6.2006
Где: Москва

Репутация: нет
Всего: нет



Цитата(mr.DUDA @ 26.6.2006,  13:01)
А для этого уже System.Management юзать надо и Win32_LogicalDisk WMI class

Пожалуй слабоват я пока этим пользоваться...

Если есть желание - подскажите! Нету онного - нафик! Будем пока так жить...

smile 
PM MAIL ICQ   Вверх
mr.DUDA
Дата 26.6.2006, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Возможно, есть какой-то другой WMI-класс, более подходящий чем этот, но я о нём не знаю smile, так что вот пример:

Код
using System;
using System.Management;

class Program
{
    static void Main(string[] args)
    {
        ManagementObjectCollection mcoll = new ManagementObjectSearcher("select * from Win32_LogicalDisk").Get();
        foreach (ManagementObject mobj in mcoll)
        {
            uint mediaType = (uint)mobj.GetPropertyValue("MediaType");
            if (mediaType == 11) // Removable media other than floppy
            {
                Console.WriteLine("Found USB drive: " + mobj.GetPropertyValue("Name"));
            }
        }
    }
}


З.Ы. вся инфа есть в MSDN, в Index набираем Win32_ и получаем длинный список WMI-классов. 


--------------------
user posted image
PM MAIL WWW   Вверх
padla
Дата 27.6.2006, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 25.6.2006
Где: Москва

Репутация: нет
Всего: нет



mr.DUDA

Хе... Фишка в том, что mediaType:
11 - это CD/DVD
12 - это HDD
А у Usb вообще нет такого значения... Вот.... 

Это сообщение отредактировал(а) padla - 27.6.2006, 14:52
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0551 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.