![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как определить колличество установленных CDROM ов и их имена? [D5, WinXP]
DenKop © (2002-08-16 00:55:00)Собственно сабж.
France (2002-08-19 09:40:00) [1]Вот функция, которая показывает какие сиди-ромы есть в системе
function CDList : string;
var
Drives, Loop : integer;
Work : string;
begin
Drives:=GetLogicalDrives;
Result:="";
for Loop:=0 to 25 do
if ((1 shl Loop) and Drives)<>0 then
begin
Work:=Char(65+Loop)+":\";
if GetDriveType(PChar(Work))=DRIVE_CDROM then
Result:=Result+Char(65+Loop);
end;
end;
Удачи!
DenKop (2002-08-16 17:30:00) [2]Нужно было имя производителя, а оно лежало в великом Сис. Реестре. Спасибо за помощь.
mumu (2002-08-16 06:15:00) [3]procedure TForm1.Button1Click(Sender: TObject);
var
w:dword;
Root:string;
i:integer;
begin
w:=GetLogicalDrives;
Root := "#:\";
for i := 0 to 25 do
begin
Root[1] := Char(Ord("A")+i);
if (W and (1 shl i))>0 then
if GetDriveType(Pchar(Root)) = DRIVE_CDROM then
Form1.Label1.Caption:=Root;
end;
end;
Взято с http://www.sources.ru/delphi/files/cdrom_letter.shtml
---------------
С уважением, mumu
Poirot (2002-08-16 03:08:00) [4]Ну собствунно это делается через GetDriveType (RTFM)
ну и в самом прямом случае пробиваешь по всему латинскому алфавиту, и проверяешь значение функции DRIVE_CDROM...
Впринципе всё...
Но вот их имена... Вы имеете ввиду буковки или имя данное производителем.... второе -см. Великий Сис. Реестр.