Главная страница | назад





Article #21543: How do I get a list of CDROM drives on a computer?

Question:
How do I get a list of CDROM drives on a computer?

Answer:


procedure GetCDROMDrives(list: TStrings);
var
  DriveBits: set of 0..25;
  Drives,DriveNum: integer;
  DriveLetter: string;
begin
  list.Clear;
  Drives := GetLogicalDrives;
  if Drives <> 0 then
  begin
    integer(DriveBits) := Drives;
    for DriveNum := 0 to 25 do
    begin
      if (DriveNum in DriveBits) then
      begin
        DriveLetter := char(DriveNum+Ord('A'))+':';
        if GetDriveType(PChar(DriveLetter)) = DRIVE_CDROM then
          list.Add(DriveLetter);
      end;
    end;
  end;
end;

Last Modified: 05-APR-00