Thema: Delphi IsDriveRemovable

Einzelnen Beitrag anzeigen

PeterPanino

Registriert seit: 4. Sep 2004
1.465 Beiträge
 
Delphi 10.4 Sydney
 
#1

IsDriveRemovable

  Alt 14. Mai 2007, 03:39
Hallo, ich möchte herausfinden, ob ein bestimmtes Laufwerk ein Wechselmedium ist oder nicht. Darüberhinaus wäre es noch vorteilhaft zu wissen, welche Art von Wechselmedium es ggf. ist, also USB-Stick, oder Diskette, oder ZIP-Laufwerk, oder Wechselfestplatte, oder ... ...

Bisher habe ich folgende Funktion verwendet:
Delphi-Quellcode:
function DriveIsRemovable( Drive: WideString ): Boolean;
var
  DT: Cardinal;
begin
  DT := GetDriveTypeW( PWideChar( Drive ) );
  Result := ( DT <> DRIVE_FIXED );
end;
Etwa mit folgendem Aufruf:

Delphi-Quellcode:
procedure TForm1.btnClick(Sender: TObject);
var
  ThisDrive: string;
begin
  ThisDrive := ExtractFileDrive(APath);
  if DriveIsRemovable(ThisDrive) then
    MessageDlg(ThisDrive + ' IS removable!', mtInformation, [mbOK], 0)
  else
    MessageDlg(ThisDrive + ' is NOT removable!', mtInformation, [mbOK], 0);
end;
Weiß jemand eine bessere Funktion, die womöglich auch den Typ des Wechselmediums zurückliefert?
  Mit Zitat antworten Zitat