Базы данныхИнтернетКомпьютерыОперационные системыПрограммированиеСетиСвязьРазное
Поиск по сайту:
Подпишись на рассылку:

Назад в раздел

Как узнать, находится ли дискета в дисководе?

Как узнать, находится ли дискета в дисководе?


type

  TDriveState(DS_NO_DISK, DS_UNFORMATTED_DISK, 
    DS_EMPTY_DISK, DS_DISK_WITH_FILES);

function
 DriveState(DrvLetter: Char): TDriveState;

var

  Mask: String
[6];
  SearchRec: TSearchRec;
  oldMode: Cardinal;
  ReturnCode: Integer;

begin

  oldMode: = SetErrorMode(SEM_FAILCRITICALERRORS);
  Mask:= '?:*.*'
;
  Mask[1] := DrvLetter;
  {$I-}

  { отключить обработку исключительных ситуаций }


  ReturnCode := FindFirst(Mask, faAnyfile, SearchRec);
  FindClose(SearchRec);

  {$I+}


  case
 ReturnCode of

    { как минимум один файл был найден }


    0: Result := DS_DISK_WITH_FILES;
    { файлов не найдено и дискета в порядке }


    -18: Result := DS_EMPTY_DISK;
    { DS_NO_DISK для DOS, ERROR_NOT_READY для WinNT, ERROR_PATH_NOT_FOUND для Win 3.1 }


    -21, -3: Result := DS_NO_DISK;
  else

    { дискета лежит в дисководе но она не форматировнная }


    Result := DS_UNFORMATTED_DISK;
  end
;
  SetErrorMode(oldMode);
end
; { DriveState }





Возврат в начало документа



  • Главная
  • Новости
  • Новинки
  • Скрипты
  • Форум
  • Ссылки
  • О сайте




  • Emanual.ru – это сайт, посвящённый всем значимым событиям в IT-индустрии: новейшие разработки, уникальные методы и горячие новости! Тонны информации, полезной как для обычных пользователей, так и для самых продвинутых программистов! Интересные обсуждения на актуальные темы и огромная аудитория, которая может быть интересна широкому кругу рекламодателей. У нас вы узнаете всё о компьютерах, базах данных, операционных системах, сетях, инфраструктурах, связях и программированию на популярных языках!
     Copyright © 2001-2024
    Реклама на сайте