Показать сообщение отдельно
  #1  
Старый 21.05.2015, 00:22
Аватар для Alloc
Alloc Alloc вне форума
Начинающий
 
Регистрация: 17.09.2014
Сообщения: 104
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Как определить букву смонтированного образа? Как отключить оптический привод?

Уважаемые форумчане, подскажите как определить букву смонтированного образа в виртуальный привод зная его название и какие файлы должны лежать в корне этого диска?

Делаю так:
Код:
function GetDiskName:Boolean;
var
  w: dword;
  Root: string;
  i: integer;
begin
  Result:=False;
  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
         if FileExists(Root+'TRACK01.MP3') then
            begin
              Result:=True;
              Break;
            end;
  end;
end;

Подскажите, правильно ли я делаю? И как было бы лучше сделать? Может быть вместо FileExists использовать GetVolumeInformation для определения названия диска? Как лучше?


И второй вопрос - как определить имеющиеся оптические приводы (физические) и отключить их на время при нажатии на кнопку и потом включить обратно при нажатии на другую кнопку?

Прошу вас если не сложно примером как это реализовать. Буду вам очень благодарен за помощь.

Заранее спасибо!
Ответить с цитированием