Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi CD-Rom Laufwerkbuchstabe ermitteln (https://www.delphipraxis.net/101988-cd-rom-laufwerkbuchstabe-ermitteln.html)

NickelM 21. Okt 2007 19:36


CD-Rom Laufwerkbuchstabe ermitteln
 
Hallo erstmal,

Ich hoffe ich habe das Richtige Unterforum gefunden.

Ich habe mal ne Frage. Wie kann ich auf die CD-Rom laufwerke zugreifen.

z.B. Es gibt spiele, die auf die CD-Roms zugreifen egal welchen Laufwerkbuchstabe die haben. Wie mache ich das

Ich habe 2 Stück. Gibt es ne möglichkeit irgentwie die Laufwerkbuchstaben herauszufinden???

P.S. : Ich abe schon mal versucht zu suchen, aber das sind mir zuvile Beiträge die er da findet und ich bin zufaul um alle durhczusuchen :oops:

Ich hoffe ihr könnt mir helfen.

mkinzler 21. Okt 2007 19:37

Re: CD-Rom Laufwerkbuchstabe ermitteln
 
WMI

NickelM 21. Okt 2007 19:40

Re: CD-Rom Laufwerkbuchstabe ermitteln
 
Was für ein ding????????

Wäre super wenn mir jemannd ein Beispiel oder Code gibt. Kann damit nichts anfangen :oops:

mkinzler 21. Okt 2007 19:44

Re: CD-Rom Laufwerkbuchstabe ermitteln
 
http://de.wikipedia.org/wiki/Windows...strumentations
http://derentwickler.de/itr/online_a...nodeid,56.html
http://msdn.microsoft.com/library/de..._reference.asp

marabu 21. Okt 2007 20:24

Re: CD-Rom Laufwerkbuchstabe ermitteln
 
Hier ein wenig Code für einen anderen Ansatz:

Delphi-Quellcode:
procedure GetLogicalDriveLetters(s: TStrings; driveType: Word);
var
  dw: DWORD;
  letter: Char;
  rootDir: string;
begin
  s.BeginUpdate;              // Visualisierung abschalten
  s.Clear;                    // Mit leerer Liste beginnen
  dw := GetLogicalDrives;     // Mount-Status aller Laufwerksbuchstaben
  for letter := 'A' to 'Z' do // Schleife über alle Laufwerke
  begin
    rootDir := letter + ':\';
    if Odd(dw) and (GetDriveType(PChar(rootDir)) = driveType) then
      s.Add(letter + ':');    
    dw := dw shr 1;           // Nächstes Status-Bit auf Bit-Position 0 schieben
  end;
  s.EndUpdate;                // Visualisierung wieder einschalten
end;

procedure TDemoForm.TestButtonClick(Sender: TObject);
begin
  GetLogicalDriveLetters(ListBox.Items, DRIVE_CDROM);
end;
Hier gestohlen: klick

Grüße vom marabu

NickelM 29. Okt 2007 14:38

Re: CD-Rom Laufwerkbuchstabe ermitteln
 
Vielen Dank marabu

genau das habe ich gesucht. Dank dir vielmals.

Gruß NickelM

himitsu 9. Jan 2010 09:17

Re: CD-Rom Laufwerkbuchstabe ermitteln
 
statt der For-A..Z-Schleife würde mir MSDN-Library durchsuchenGetLogicalDriveStrings besser gefallen, vorallem wo so es jetzt in der CodeLib sein soll.

http://www.delphipraxis.net/internal...t.php?t=171471

:oops: hab das GetLogicalDrives übersehn


[add]
mit Try-Finally wäre es bestimmt hübscher

Delphi-Quellcode:
procedure GetLogicalDriveLetters(list: TStrings; driveType: Word);
var
  drives: DWORD;
  letter: Char;
begin
  list.BeginUpdate;
  try
    list.Clear;
    drives := GetLogicalDrives; // Mount-Status aller Laufwerksbuchstaben
    for letter := 'A' to 'Z' do
    begin
      if Odd(drives) and (GetDriveType(PChar(letter + ':\')) and driveType <> 0) then
        list.Add(letter + ':');
      drives := drives shr 1;
    end;
  finally
    list.EndUpdate;
  end;
end;
oder auch
Delphi-Quellcode:
procedure GetLogicalDriveLetters(list: TStrings; driveType: Word);
var
  drives: DWORD;
  letter: Char;
begin
  list.BeginUpdate;
  try
    list.Clear;
    drives := GetLogicalDrives; // Mount-Status aller Laufwerksbuchstaben
    for letter := 'A' to 'Z' do
      if (drives and (1 shl (Ord(letter) - Ord('A'))) <> 0)
          and (GetDriveType(PChar(letter + ':\')) and driveType <> 0) then
        list.Add(letter + ':');
  finally
    list.EndUpdate;
  end;
end;
so könnte man auch noch sowas machen und mehrere Laufwerkstypen gleichzeitig abfragen.
Delphi-Quellcode:
procedure TDemoForm.TestButtonClick(Sender: TObject);
begin
  GetLogicalDriveLetters(ListBox.Items, DRIVE_CDROM or DRIVE_REMOVABLE);
end;

Luckie 9. Jan 2010 09:38

Re: CD-Rom Laufwerkbuchstabe ermitteln
 
Zitat:

Zitat von NickelM
aber das sind mir zuvile Beiträge die er da findet und ich bin zufaul um alle durhczusuchen :oops:

Was soll man dazu noch sagen? :roll: Weil du zu faul bist, sollen wir dir jetzt die Lösung aus den Suchergebnissen suchen?

Klaus01 9. Jan 2010 09:52

Re: CD-Rom Laufwerkbuchstabe ermitteln
 
@Luckie, schon mal auf die Jahreszahl des Ursprungsposts geschaut?
(Ist ja noch früh am Morgen)
Grüße
Klaus

Luckie 9. Jan 2010 09:57

Re: CD-Rom Laufwerkbuchstabe ermitteln
 
Wer kramt denn so alte Beiträge wieder hervor? :wall:


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:41 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz