Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.08.2013, 10:26   #1
calypso
Форумчанин
 
Регистрация: 02.12.2012
Сообщений: 250
По умолчанию Как получить список СВОБОДНЫХ букв дисков

В Гугле есть варианты кода для простого перебора дисков,а как вывести список свободных букв? Т.е. те буквы, которые доступны в меню "Назначить букву диска" из оснастки Управления дисками Windows
Есть конечно маразматическая идея сделать массив из 26 букв, и методом исключения отсортировать из него те буквы,которые не попадутся при переборе логических дисков
calypso вне форума Ответить с цитированием
Старый 15.08.2013, 10:27   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Есть конечно маразматическая идея сделать массив из 26 букв
Нормальная идея
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 15.08.2013, 10:43   #3
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Кажись тут только перебор. Цыклом for to do переберай буквы от A до Z. И если GetDrive не дала результат на букву, то такого диска нет и получается можно её в список
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 15.08.2013, 12:08   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 15.08.2013, 15:22   #5
grominfo
Форумчанин
 
Аватар для grominfo
 
Регистрация: 30.05.2011
Сообщений: 651
По умолчанию

Код:
procedure readdrive(list:tstrings);
var
 s: string;
 c: char;
 DriveType: integer;
begin
 for c:='A' to 'Z' do
  begin
   s:=c+':';
   DriveType:=GetDriveType(PChar(s));
   if DriveType<>1 then continue;
   list.Add(s);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 readdrive(listbox1.Items);
end;
Создание, программирование и сопровождение сайтов любой сложности.
Изготовление программ на заказ.
Список услуг и портфолио на сайте www.andreygrom.ru
grominfo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить список локальных дисков igrok111 Общие вопросы Delphi 7 08.06.2013 15:41
Как получить список подключенных сетевых дисков calypso Работа с сетью в Delphi 1 02.12.2012 19:59
Как получить список процессов? SoLL Win Api 19 28.01.2012 09:52
как наиболее просто получить название букв колонки для ячейки motorway Microsoft Office Excel 2 03.07.2009 04:52
Как получить список серверов? JD-Ell Работа с сетью в Delphi 0 17.04.2009 22:34