Announcement

Collapse
No announcement yet.

CD-ROM-Bedienung

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • CD-ROM-Bedienung

    Hallo Jungs!<br>
    Ich habe vier CD-ROM-Laufwerke in meinem Rechner eingebaut und möchte<br>
    programmgesteuert die Schubladen öffnen und schließen können.<br>
    Mit TMediaPlayer und MciSendcommand komme ich im Moment nicht weiter.<br>
    Vielleicht kann mir ja mal jemand einen Lösungsansatz geben.<br>
    Ich verwende Delphi 6<br>
    <br>
    Schon mal Danke im Voraus.

  • #2
    Hallo,

    bei mir reicht der folgende Aufruf aus:
    <pre>
    uses MMSystem;

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    mciSendCommand(MediaPlayer1.DeviceID, MCI_SET, MCI_SET_DOOR_OPEN, 0);
    end;
    </pre&gt

    Comment


    • #3
      Ja schon, aber wo lege ich fest welches Laufwerk gemeint ist?<br>
      Vermutlich sehe ich den Wald vor lauter Bäumen nicht. :-

      Comment


      • #4
        Guck mal in der Hilfe unter MediaPlayer

        Comment


        • #5
          //////////////// CD-Rom Drive Open / Close /////////////////

          procedure TMainForm.BitBtn13Click(Sender: TObject);
          var Befehl : string;
          ErrCode : integer;
          ErrStr : array [0..255] of char;
          begin
          Befehl := 'open '+ ComboBox1.Text+' type cdaudio alias geraet';
          MCISendString(PChar(Befehl), nil, 0, 0);
          ErrCode:=MCISendString('set geraet door open wait', nil, 0, 0);
          MCISendString('close geraet', nil, 0, 0);
          if ErrCode <> 0 then begin
          MCIGetErrorString(ErrCode, ErrStr, 255);
          StatusBar2.Panels[4].Text:=ErrStr;
          end;
          end;

          // Close //

          procedure TMainForm.BitBtn14Click(Sender: TObject);
          var Befehl : string;
          ErrCode : integer;
          ErrStr : array [0..255] of char;
          begin
          Befehl := 'open '+ ComboBox1.text +' type cdaudio alias geraet';
          MCISendString(PChar(Befehl), nil, 0, 0);
          ErrCode:=MCISendString('set geraet door closed wait',nil, 0, 0);
          MCISendString('close geraet', nil, 0, 0);
          if ErrCode <> 0 then begin
          MCIGetErrorString(ErrCode, ErrStr, 255);
          StatusBar2.Panels[1].Text:=ErrStr;
          end;
          end

          Comment


          • #6
            In der Jedi Code Library (seit 23.03.2002 gibt es die Version 1.2) gibt es die Funktion

            OpenCloseCdDrive(OpenMode: Boolean; Drive: Char = #0);

            Das sollte auch das gewünschte liefern

            Comment

            Working...
            X