Disk in Drive/de

From Lazarus wiki
Jump to navigationJump to search
Windows logo - 2012.svg

Dieser Artikel behandelt ausschließlich Windows.

Siehe auch: Multiplatform Programming Guide/de

Deutsch (de) English (en)

Dieser Artikel beschäftigt sich mit der Windowsprogrammierung.

Die Funktion prüft, ob sich ein Medium im CD bzw. DVD Laufwerk befindet.

uses
  SysUtils, ...;

// Aufzählung (Enumeration) für die Rückgabewerte
type
  byte = (enmKeinLWBuchstabe, enmKeinMedEingelegt, enmMedEingelegt, enmFehler);

 ...

function funDiskInDrive(chrLaufwerk: char): byte;
begin

  Result := enmKeinLWBuchstabe;
  chrLaufwerk := UpCase(chrLaufwerk);

  // Überprüft, ob es sich um einen gültigen Laufwerksbuchstaben handelt.
  if not (chrLaufwerk in ['A'..'Z']) then
    exit;

  // Überprüft, ob das Laufwerk ein Medium enthält.
  try
    if DiskSize(Ord(chrLaufwerk) - $40) <> -1 then
      Result := enmMedEingelegt
    else
      Result := enmKeinMedEingelegt;
  except
    Result := enmFehler;
  end;

end;

  ...

Beispiel für den Aufruf der Funktion:

  ...

  case funDiskInDrive('F') of
    enmKeinLWBuchstabe: ... ;
    enmKeinMedEingelegt: ... ;
    enmMedEingelegt: ... ;
    enmFehler: ... ;
  end; 
 
  ...