Thema: Delphi USB Stick erkennen

Einzelnen Beitrag anzeigen

ASM

Registriert seit: 16. Aug 2004
165 Beiträge
 
Delphi 7 Enterprise
 
#30

AW: USB Stick erkennen

  Alt 10. Feb 2012, 17:33
mir fällt gerade auf, dass der auf der letzten seite vorgeschlagene source-code (WMDeviceChange) nicht funktioniert.

folgende funktion gibt keinen wert zurück, da if (Maske and 1) = 1 niemals zutrifft:

Der Fehler liegt im Code
Code:
if (pDBVol^.dbcv_flags and $0001) = $0001 then
Der Wert "$0001" ist für den Wechsel eines CD/DVD-Laufwerks gültig.
Mit USB-Drives (Stick, Harddisk)) aber wird die dann folgende Schleife niemals durchlaufen, also der Laufwerksbuchstabe nicht erkannt.

Für USBs muss es vielmehr heißen:
Code:
 if (pDBVol^.dbcv_flags and DBTF_REMOVE) = DBTF_REMOVE then
wobei:
Code:
Const
  DBTF_REMOVE = $0000;
  DBTF_MEDIA = $0001;
  Mit Zitat antworten Zitat