Projekte > Optische Laufwerke > Typ

CD, DVD, HD DVD oder BD Laufwerk?

Im vorigen Kapitel konnte man feststellen, ob das Laufwerk ein CD- oder DVD-Laufwerk ist. Eine weitere Unterscheidung für optische Laufwerke war dort nicht vorgesehen. Bei der Suche ist mir das GET CONFIGURATION mit dem PROFILE LIST FEATURE aufgefallen. Dort werden durch das Laufwerk unterstützte Merkmale aufgelistet. So unter anderem:

 
  const
    FeatureProfile_CDROM    = $0008;
    FeatureProfile_DVDROM   = $0010;
    FeatureProfile_BDROM    = $0040;
    FeatureProfile_HDDVDROM = $0050;
        

Es wird die Profile List wie im Kapitel Profile List Feature beschrieben erstellt und dann zum Beispiel wie folgt ausgewertet:

 
  function ReadDeviceType: AnsiString;
  {*******************************************************************************
  *  Den Typ des Gerätes ermitteln.
  }
  var
    bCDROM    : Boolean;
    bDVDROM   : Boolean;
    bBDROM    : Boolean;
    bHDDVDROM : Boolean;
    i         : Integer;
  begin
    bCDROM := False; bDVDROM := False; bBDROM := False; bHDDVDROM := False;
    {
    *  Liste durchgehen.
    }
    if Length(fDrive[fActive].ProfileList.Profile) > 0 then
    for i := 0 to Length(fDrive[fActive].ProfileList.Profile) -1 do
    case fDrive[fActive].ProfileList.Profile[i].Number of
      FeatureProfile_CDROM    : bCDROM    := True;
      FeatureProfile_DVDROM   : bDVDROM   := True;
      FeatureProfile_BDROM    : bBDROM    := True;
      FeatureProfile_HDDVDROM : bHDDVDROM := True;
    end;
    {
    *  Auswerten.
    }
    if bCDROM    then fDrive[fActive].DeviceType2 := 'CD-ROM';
    if bDVDROM   then fDrive[fActive].DeviceType2 := 'DVD-ROM';
    if bHDDVDROM then fDrive[fActive].DeviceType2 := 'HD RDVD-ROM';
    if bBDROM    then fDrive[fActive].DeviceType2 := 'BD-ROM';
  end;
          

Eine Demo, welche die Funktion nutzt:

CD or DVD or BD (podCDorDVDorBD.7z - 233 kb) MD5 (1 kb). Stand: 28. April 2013

Änderungen an der Demo

Datum Beschreibung
28.04.2013Kleine Überarbeitung und neuer Name.
06.04.2013Erstellung.