function DiskInDrive(Drive: Char): Boolean; var ErrorMode: word; begin if Drive in ['a'..'z'] then Dec(Drive, $20); if not (Drive in ['A'..'Z']) then begin Result := False; Exit; end; ErrorMode := SetErrorMode(SEM_FailCriticalErrors); try if DiskSize(Ord(Drive) - $40) = -1 then Result := False else Result := True; finally SetErrorMode(ErrorMode); end; end;