Home | Kontakt | Sitemap

Start

Über mich

Kontakt

Sitemap

Lizenz

Anleitungen

DVD, miniDVD

SVCD

Audio, Audio-CD (CD-DA)

AVI

Software

Von Freunden und Bekannten

Eigene Programme

Programmierung

Delphi

Lazarus

Delphi/Lazarus

Projekte

MPEG-1/2 Video

Optische Laufwerke

Audio-CD (CDDA)

Raspberry Pi Dashcam

Verschiedenes

MPEG 2 Schnitt

Project X

VCD Easy

Hardlinks

Windows

Links

Software

Projekte | Optische Laufwerke Typ - CD, DVD, HD DVD oder BD Laufwerk?

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

28.04.2013Kleine Überarbeitung und neuer Name.
06.04.2013Erstellung.

CD oder DVD LW > CD, DVD, HD DVD oder BD LW? > CD, DVD oder BD LW (ShellAPI)