Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.05;
Скачать: CL | DM;

Вниз

GetLogicalDrivers   Найти похожие ветки 

 
[ping]VIN ©   (2004-07-21 00:56) [0]

Здравствуйте. У меня такой вопрос. Функция GetLogicalDrivers как я понимаю возвращает определенное значение из которого должно быть видно какой диск доступен. У меня она возвращает 61. Так вот как понять какой диск у меня доступен?
а - флопяк
ц и д - локальные
е и ф - сидюки.

Помогите пожалуйста.


 
Dimaxx   (2004-07-21 01:07) [1]

Эта функция возвращает не типы драйвов, а их наличие. Бит 0 и 1 в результате отвечает за А и В соответственно. Остальные таким же образом (бит 3 - С, бит 4 - В и т.д.). По типам драйвов  - GetDriveType.


 
Dimaxx   (2004-07-21 01:08) [2]

Забыл. Установленный бит - драйв есть, равен 0 - нет такого.


 
Inco   (2004-07-21 13:39) [3]

RTFM!
Используй GetLogicalDriveStrings и GetDriveType.

Вот пример из готовой программы, которая вычисляет локальные жесткие диски (правда на BCB):

TStringList *sl = new TStringList;

 {char *dr = (char *)malloc(sizeof(char) * 200);
  char *c = (char *)malloc(4);
  int len = GetLogicalDriveStrings(200, dr);
  for(int i = 0; i < len; i++){
    if(dr != 0){
      StrMove(c, dr + i, 2);
      c[2] = "\0";
      if(GetDriveType(c) == DRIVE_FIXED){sl->Insert(0, AnsiString(c));}
      i += 3;
    }
  }
  free(c);
  free(dr);
 }

 if(sl->Count < 1){
   Application->MessageBox("Logical drives not found on this computer!",
     "Drives not found", MB_ICONWARNING);
   delete sl;
   return;
 }



Страницы: 1 вся ветка

Текущий архив: 2004.09.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.068 c
1-1092722839
RustiK
2004-08-17 10:07
2004.09.05
Убить System.pas


1-1092845156
Чувак
2004-08-18 20:05
2004.09.05
Компонента Calendar


3-1091801616
Руслан
2004-08-06 18:13
2004.09.05
Как некоторые строки в DBGrid выделить жирным шрифтом?


4-1089976584
Вадим
2004-07-16 15:16
2004.09.05
Потоки


14-1092743459
Григорьев Антон
2004-08-17 15:50
2004.09.05
Delphi+БД. Какую книгу посоветуете?