Einzelnen Beitrag anzeigen

rory
(Gast)

n/a Beiträge
 
#1

Wechseldatenträger beschreibbar?

  Alt 9. Aug 2006, 20:26
Wie bekomme ich - über eine Funktion - heraus:

1. ob mein Programm von einem Wechseldatenträger (Diskette, CD/DVD oder USB-Stick) gestartet wurde

2. ob der Datenträger wiederbeschreibbar ist (und zwar sofort)?

Zu 1.:
- Laufwerksbuchstaben von paramstr(0) ermitteln
- dann sinngemäß

Delphi-Quellcode:
function GetDriveImage(s: string): Integer;
var drv: Byte;
begin
  Result := 3;
  drv := GetDriveType(PChar(s + ':\'));
  case drv of
    DRIVE_REMOVABLE: Result := 0;
    DRIVE_FIXED: Result := 1;
    DRIVE_CDROM: Result := 2;
    DRIVE_REMOTE: Result := 3;
  end;
end;
//@Moderator: Absichtlich *keine* Delphi-Tags gesetzt!

Der obigen function wird in s der Laufwerksbuchstabe (als ein ein Zeichen langer String) übergeben. Funktioniert auch.

Zu 2.:
Wie bekomme ich raus, ob das Ergebnis der obigen funcion ein sofort wiederbeschreibbarer Wechseldatenträger (sprich: USB-Stick ohne Schreibschutz) ist?

Geht das wirklich nur über das versuchsweise Schreiben einer dummy-Datei auf das Laufwerk "s" oder geht das irgendwie "eleganter"?

Und ohne kreuzbrechende Verrenkungen unter Windows2000 SP4 mit Delphi5pro?

mfg

[edit=Luckie]@rory: Absichtlich Delphi-Tags gesetzt. Mfg, Luckie[/edit]
  Mit Zitat antworten Zitat