Einzelnen Beitrag anzeigen

Gerd01

Registriert seit: 18. Mär 2005
Ort: NRW
117 Beiträge
 
Delphi XE2 Professional
 
#4

Re: Laufwerksbuchstaben aus device-name ermitteln

  Alt 26. Jul 2007, 18:29
Zitat von Robert Marquardt:
Gibt es das /device/cdrom0 ueberhaupt?
Ja sicher es gibt auch /device/cdrom1 und weitere wenn du mehrere CD_laufwerke hast.

Ich habe mitllerweile eine Funktion gefunden.

Delphi-Quellcode:
function GetDosDevice(CDDriveID:integer):string;
var
  Buffer : array[0..500] of char;
  TmpPC : PChar;
  CdCtr:integer ;
begin
  CdCtr := 0 ;
  result := '';
  GetLogicalDriveStrings(SizeOf(Buffer),Buffer);
  TmpPC := Buffer;
   while TmpPC[0] <> #0 do begin
    if Windows.GetDriveType(TmpPC) = DRIVE_CDROM then
        begin
         if CdCtr = CdDriveId then
           begin
             result := TmpPC;
             exit;
           end;
           CdCtr := CdCtr+1;
        end ;
    TmpPC := StrEnd(TmpPC)+1;
   end;
end;
Mit:
Var
Last : Char;
LW : String;

und
LW := '/device/cdrom0';
Last := LW[Length(LW)];
LW := GetDosDevice(StrToIntDef(LW,0));

hole ich LW die Laufwerk bzw CD-ROM Bezeichnung.
  Mit Zitat antworten Zitat