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

Вниз

как оределить букву CD-ROM?   Найти похожие ветки 

 
random ©   (2004-04-06 10:38) [0]

подскажите как оределить букву CD-ROM?
и что там uses?


 
Ozone ©   (2004-04-06 11:15) [1]

GetLogicalDriveStrings - получаешь буквы всех дисков
Пробугаешся по ним и смотришь GetDriveType


 
random ©   (2004-04-06 11:28) [2]

Нет, мне нужно, не всех дисков а именно CD, так чтоб программа самостоятельно определила привод а не я из списка выбирал


 
xShadow ©   (2004-04-06 11:40) [3]


> random ©   (06.04.04 11:28) [2]
> Нет, мне нужно, не всех дисков а именно CD, так чтоб программа
> самостоятельно определила привод а не я из списка выбирал

А ты описание погляди! F1.


 
Viperm   (2004-04-06 11:55) [4]

Мдааа.. у меня вот такая функция прокатывала :)



// Собсвенно сама функция
function GetCDDrv: boolean;
var
 ch: Char;
 drv_str: PChar;
 log_str: string;
begin
 result:=false;
 lstDrives.Clear;
 log_str:="";
 try
   // Перечисление всех возможных букв дисков
   for ch:="A" to "Z" do begin
     drv_str:=PChar(string(ch)+":");
       // Если диск - CDROM
       if GetDriveType(drv_str)=DRIVE_CDROM then begin
       log_str:=log_str+" "+drv_str;
       lstDrives.Items.Add(drv_str+" ["+        GetDrvLabel(drv_str)+"]");
       lstDrives.Checked[lstDrives.Count-1]:=true;
     end;
   end;
 finally
   // Если CDROM найдены, то
   if Trim(log_str)<>"" then begin
     AddToLog("Найдены устройства CDROM: "+log_str, false, false);
     GetTestingCD;
     result:=true;
   end else begin
     AddToLog("Устройства CDROM не найдены", false, true);
   end;
 end;
end;

// Определение метки диска
function GetDrvLabel(d_path: PChar): string;
var
 NoMatter : Cardinal;
 VolumeName: Array [0..MAX_PATH] of Char;
begin
 if MediaExists(d_path) then begin
   GetVolumeInformation(d_path, VolumeName, SizeOf(VolumeName),
     nil, NoMatter, NoMatter, Nil, 0);
   Result:=VolumeName;
 end else begin
   Result:="no disk";
 end;
end;



 
Ozone ©   (2004-04-06 13:52) [5]

TO Viperm [4]

А зачем весь алфавит перебирать? GetLogicalDriveStrings возвращает все что нужно...


 
http://my.samara.ru/~Delphi   (2004-04-15 17:48) [6]

procedure TForm1.Panel3Click(Sender: TObject);
var i:integer;
begin
 ComboBox1.Items.Clear;
for i:=65 to 90 do if GetDriveType(PChar(chr(i)+":\"))=DRIVE_CDROM then begin
 ComboBox1.Items.Add(chr(i));
 ComboBox1.ItemIndex:=0;
end;
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.061 c
14-1083224569
Kerk
2004-04-29 11:42
2004.05.23
Проездной


8-1078222209
badry
2004-03-02 13:10
2004.05.23
звук


11-1072006070
Revolter
2003-12-21 14:27
2004.05.23
Font.Size (VCL) = ? (KOL)


14-1083266065
ANDREY'S
2004-04-29 23:14
2004.05.23
Рабочий сто виндоус


14-1083635414
тихий вовочка
2004-05-04 05:50
2004.05.23
Куда исчезают все бандиты