Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.02.18;
Скачать: CL | DM;

Вниз

Как проверить если дискета в дисководе?   Найти похожие ветки 

 
Zuvom ©   (2002-02-02 00:10) [0]

В дисковод вставлена дискета, как програмно это узнать? желательно с помощью API


 
Pat ©   (2002-02-02 00:43) [1]

Автор: J_S

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 }



 
Poirot   (2002-02-02 02:13) [2]

Проще надо быть... Просто определи есть ли флопер(для полной картины) и DiskFree или DiskSize (Точно не помню)... и проверяй на -1 - усё



Страницы: 1 вся ветка

Текущий архив: 2002.02.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.058 c
6-57159
SkyR
2001-11-23 01:21
2002.02.18
Такой вот вопрос по отправке e-mail с пом Delphi 5...


1-57085
HDD
2002-02-02 01:20
2002.02.18
Как мне применить следующий код к RichEdit1?


1-57102
ev
2002-01-31 15:18
2002.02.18
как нарисовать кнопку нажатой?


3-57005
nastuha
2002-01-18 09:50
2002.02.18
Пожалуйста помогите советом в реализации метакуба..


14-57217
Merlin
2001-12-26 11:29
2002.02.18
Хороший программист характеризуется умением доказать почему задачу невозможно выполнить, когда ему просто лень её выполнять...