CD-Laufwerk öffnen/schliessen

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

  • Abt. CD-Laufwerksschacht öffnen und schließen
    -------------------------------------------------------------
    Anbei ein Minitool, das ich für eigene Zwecke gebastelt hatte.
    Vielleicht kann's ja wer brauchen.


    Gruss

    HP255G7:Win10pro2.004,4*AMD Ryzen3200U@2.60GHz,6+2GB-RadeonVega/237GBSSD:intlDVDRW,3xUSB3 ext4TB-HDX,XProfanX3+Xasm/Xpse

  • @Specht
    Bei dem XProfan-Wettbewerb hatte ich das schon als fertige EXE (CD-Butler) eingereicht und habe garnicht so schlecht abgeschnitten. ;)

  • Hallo Horst!
    Ja, das scheint eine immer wieder gesuchte Funktion zu sein. Bei mir brach der Laufwerksknopf innen ab, und das dauernde ersatzweise Gedrücke an der Lade macht die Mechanik ja auch nicht besser! Allerdings hatte ich lange nach den richtigen MCI-Kommandos gesucht...
    Gruss!
    P.S.: Tolles Teil, dein CD-Butler!

    HP255G7:Win10pro2.004,4*AMD Ryzen3200U@2.60GHz,6+2GB-RadeonVega/237GBSSD:intlDVDRW,3xUSB3 ext4TB-HDX,XProfanX3+Xasm/Xpse

  • Da behalt mal das Laufwerk mit dem abgebrochenen Knopf.;) Bei mir geht das Schließen nicht, nur öffnen. Und MS schreibt ja auch "if possible". Scheint also durchaus üblich zu sein, den Draht oder die zugehörigen Bytes im Controller einfach mal einzusparen.


    Gruß Volkmar

  • Volkmar: Mit "if possible" sind denke ich Laptops gemeint, die eine FEDER zum Auswurf benutzen statt einen Motor. Klar muss man die flache Lade da selbst zudrücken.


    Wenn [Schließen] bei Deinem Laufwerk nicht klappt, probiers mal mit "set CD door close" statt "closed". Im Grunde spricht man mit dem Laufwerkstreiber sozusagen in Klartext. Die Rückmeldungen sind oft auch recht aufschlußreich.
    Vielleicht versuchst du mal, das Fenster zu vergrößern und einige Waitinput einzubauen, um die Rückmeldungen des CDAUDIO genauer lesen zu können.
    Wenn "not implemented yet" kommt: Treiber updaten!


    Gruss

    HP255G7:Win10pro2.004,4*AMD Ryzen3200U@2.60GHz,6+2GB-RadeonVega/237GBSSD:intlDVDRW,3xUSB3 ext4TB-HDX,XProfanX3+Xasm/Xpse

  • Danke für die Hinweise. Im aktuelle Falle handelt es sich in der Tat um einen Laptop. Aber auch mein alter Desktoprechner hatte so ein Laufwerk, wo das nicht klappte. Und das hatte einen Motor und eine Taste, um den Motor anzusteuern. Nur eben nicht vom Controller aus, nur von der Taste. Ich hatte mich damals mal an einem CD-Player versucht und bin schon mal mit dem Ärgernis konfrontiert worden.
    Close statt Closed dürfte aber auch dort nichts gebracht haben, Close ist reserviert für das Schließen eines Gerätes. Übrigens, nicht der Treiber wertet die Stringkommandos aus, sondern die MM-DLL. Damit werden die entsprechenden Strukturen (MCI Structures (Windows)) gefüllt und damit der Treiber angesprochen. Die können auch direkt angesprochen werden, ganz ohne das Stringinterface, wenn man sich die Mühe machen will, auch noch die ganzen MCI-Kommandos einzubinden und die entsprechenden Strukturen zu bearbeiten.


    Gruß Volkmar

  • ... oh! Danke! Ihr wisst ja, in 'Windows API' bin ich FKK-ler.
    Ein Controller, der aufmachen kann aber nicht zu? *Sachen gibts!??*
    Sorry, da hab ich wohl Eulen nach Athen getragen :-)
    Gruss


    P.S.: Wie könnte ich erfahren, welche MCI-Kommandos das Laufwerk bzw. der Treiber NOCH versteht (real, nicht MSDN-MCI "Was gibt es alles"? Gibts vielleicht sowas wie einen "GET CDAudio HELP on XXX-Befehl?

    HP255G7:Win10pro2.004,4*AMD Ryzen3200U@2.60GHz,6+2GB-RadeonVega/237GBSSD:intlDVDRW,3xUSB3 ext4TB-HDX,XProfanX3+Xasm/Xpse

  • So direkt nicht. Aber eine Übersicht, was alles möglich ist
    capability command (Windows)


    Um beim Beispiel des Auswerfens zu bleiben:
    In der Rubrik (= Value) CDAudio nehmen wir den Wert (= Type) "can eject" um rauszufinden, ob das Laufwerk den Datenträger auswerfen kann. Ergibt dann die folgende XProfan-Zeile:


    Ergebnis$ = MCISend$("Capability CD can eject")


    Vorausgesetzt natürlich, daß das Gerät CDAudio zuvor unter dem Namen CD geöffnet wurde.
    Und die sagt mir TRUE, also kann mein Laufwerk auswerfen. Ob die Lade auch per Kommando eingezogen werden kann, kann ich leider damit nicht in Erfahrung bringen. Entweder es geht, oder es geht nicht. So kannst Du für alle Multimediageräte abfragen, ob die gewünschte Eigenschaft verfügbar ist.


    Interessant wäre auch


    MCISend$("Status CD media present")


    Sagt true, wenn eine CD im Laufwerk liegt.


    MCISend$("Info CD Identity")


    Liefert die Datenträgernummer, damit kannst Du Deine Musiksammlung dann perfekt verwalten. Hast Du die CD registriert und den Inhalt einmal eingetragen, kannst Du das Inhaltsverszeichnis der CD zum Beispiel wiederfinden.


    MCISend$("Status CD Number of Tracks")


    Liefert die Anzahl der Track auf der CD


    MCISend$("Status CD Type Track " + Str$(TrackNummer%))


    Liefert den Typ, also Audio, wenn es ein Musiktitel ist.
    Status liefert noch eine ganze Menge Infos, dann zu finden unter Status, in der linken Leiste der Seite anklicken.


    Gruß Volkmar