Карта сайтаСсылкиКонтакты

Как проверить готовность флоппи-диска

PDF Печать
Статьи

Как проверить готовность флоппи-диска (находится ли дискета в дисководе?).


function DiskInDrive(const Drive: Char): boolean;
var
  drvnum: byte;
  emode: word;
begin
  result := true; // было false
  drvnum := ord(Drive);
  if drvnum >= ord('a') then dec(drvnum, $20);
  emode := SetErrorMode(SEM_FAILCRITICALERRORS);
  try
    while DiskSize(drvnum - $40) = -1 do begin // при неудаче выводим диалог
      if (Application.MessageBox('Диск не готов...' + chr(13) + chr(10) +
          'Повторить?', pchar('Диск ' + UpperCase(drive)), MB_OKCANCEL+ 
          MB_ICINEXCLAMATION{iconquestion}) = idcancel) then begin
        result:= false;
        break;
      end;
    end;
  finally
    SetErrorMode(emode);
  end;
end;

 

Добавить комментарий


Защитный код
Обновить