Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

FindFirst [D5, D6, Win95/98, NT4, Win2k]


esprit_bel ©   (2002-05-28 08:20:00) 

Б.Б. нужно проверить есть ли дискета в дисководе.Скачал пример, но он работает не корректно.Подскажите как разбить возвращаемые значения FindFirst на два подмножества (есть диск и нет его).
Заранее спасибо.


MBo   (2002-05-28 08:30:00) [1]

Determining if there is a disk/diskette/CD in a removable-disk drive

var
DrivePath: array [0..3] of char = "A:\";

function IsDiskIn(drive: char): boolean;
var
d1, d2, d3, d4: longword;
begin
DrivePath[0] := drive;
Result := GetDiskFreeSpace(DrivePath, d1, d2, d3, d4);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
if not IsDiskIn("A") then
ShowMessage("Drive A: Not Ready");

end;


Reindeer Moss Eater   (2002-05-28 08:28:00) [2]

function IsDriveReady(DriveLetter : char) : bool;
var
OldErrorMode : Word;
OldDirectory : string;
begin
OldErrorMode := SetErrorMode(SEM_FAILCRITICALERRORS);
GetDir(0, OldDirectory);
{$I-}
ChDir(DriveLetter + ":\");
{$I+}
if IoResult <> 0 then
Result := False
else
Result := True;

ChDir(OldDirectory);
SetErrorMode(OldErrorMode);
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо