Multimedia-Tasten drücken - was kommt bei Autoit an?

  • Hallo Freunde der automatisierten Schritte,

    ich drücke eine Multimedia-Taste und möchte wissen, was bei Autoit ankommt.

    in der Hilfe steht unter Send z.B.

    {VOLUME_MUTE} Mute the volume
    {VOLUME_DOWN} Reduce the volume
    {VOLUME_UP} Increase the volume

    Auch das half leider nicht weiter (Thread ist zu - weder _IsPressed noch HotKeySet("{LAUNCH_MEDIA}","RunApp")).
    https://autoit.de/index.php/Thre…rgendwie-nicht/

    #include <Misc.au3>
    While 1
    If _IsPressed("{VOLUME_DOWN}") Then
    ConsoleWrite ("a")
    EndIf
    WEnd

    Ein Soundplayer unter Windows 8/64 zeigt mir, dass die Multimedia-Tasten funktionieren, ich kann sie jedoch nicht mit Autoit abfragen. Ich habe keinen extra Treiber für die Tastatur installiert.

    Mit welchem Script kann ich abfragen, was bei Autoit überhaupt ankommt, wenn ich eine der Multimedia-Tasten drücke (ggf. ein Hex-Wert oder eine andere Info)?

    Wie kann ich das Problem weiter eingrenzen, warum die Multimedia-Tasten nicht von Autoit ausgewertet werden? Kennt Ihr einen Windows-DLL-API-Aufruf, der über Autoit die Multimedia-Tasten z.B. als Hexwert zurückgibt? (Zusätzlich gibt es noch eine Logitech-Taste.)


    Viele Grüße
    AutoMit

    3 Mal editiert, zuletzt von AutoMit (24. Juni 2015 um 23:50)

  • Das funktioniert bei mir einwandfrei:

  • Hilfe zu _IsPressed:
    _IsPressed ( $sHexKey [, $vDLL = 'user32.dll'] )

    01 Left mouse button -> _IsPressed(01)
    Du kannst nicht einfach den String der Taste übergeben, wenn dort steht, dass eine HexVariable (Zahl) gefordert wird
    Wenn du in einer Schleife,... aufrufst würde ich dir empfehlen DllOpen("user32.dll") an _isPressed zu übergeben, sonst muss die dll bei jedem aufruf der methode neu geladen werden -> langsam
    Zum ermitteln kannst du ja einfach die taste gedrückt halten und dann nen progamm starten, dass in ner schleife alle zahlen von 0 bis bsp. 1000 durchgeht, und die zahl ausgibt, bei der _ispressed true ergibt :)

  • Zum ermitteln kannst du ja einfach die taste gedrückt halten und dann nen progamm starten, dass in ner schleife alle zahlen von 0 bis bsp. 1000 durchgeht, und die zahl ausgibt, bei der _ispressed true ergibt

    Hihi, als ich das Thema durchgelesen habe, habe ich mich gefragt, wie ich in so einem Fall die Tastennummer ermittle.. Dann kommst du :D
    Ich brauche das nicht. Aber mir drängt sich eine Frage dazu auf. Das muss ja einem Standard folgen, damit jede Tastatur den richtigen Befehl sendet. Wo findet man solche Informationen zu von Windows unterstützten Tastaturbefehlen? Oder verstehe ich hier etwas völlig falsch?

    Grüße autoiter