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
   raise EConvertError.Create('Not a valid drive ID');
  ErrorMode := SetErrorMode(SEM_FailCriticalErrors);
  try
   { drive 1 = a, 2 = b, 3 = c ... }
   if DiskSize(Ord(Drive) - $40) = -1 then
    Result := False
   else
    Result := True;
  finally
   SetErrorMode(ErrorMode);
  end;
end;然后: if DiskInDrive('E') then showmessage('OK!');