1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. SchrotterChris

Beiträge von SchrotterChris

  • Logitech Gaming Tastatur - UDF

    • SchrotterChris
    • 21. Februar 2015 um 21:43

    Hallo CentuCore.

    Nein mit AutoIt schon jedoch mit DLL's das ist das erste "Projekt" wo DLL's vorhanden sind.

    Ok hab das mit dem CB rausgenommen, jedoch bekomme ich trotzdem dauernd Fehler in der Zeile 15 (DllCall 'LogiGkeyInit').


    Spoiler anzeigen
    [autoit]

    $callback = -1

    [/autoit] [autoit][/autoit] [autoit]

    $Strukt = DllStructCreate("ptr context; ptr callback")
    $callback = DllCallbackRegister("_Callback", "none:cdecl", "dword;wstr;ptr")
    $Strukt.context = Null
    $Strukt.callback = DllCallbackGetPtr($callback)

    [/autoit] [autoit][/autoit] [autoit]

    $dll = @ScriptDir & "\GKY.dll"

    [/autoit] [autoit][/autoit] [autoit]

    $DO = DllOpen ($dll)
    If @error Then MsgBox (0, "ERROR", "DllOpen")
    MsgBox (0, "INFO", DllStructGetPtr($Strukt))
    $DC_IN = DllCall ($DO, "bool:cdecl", "LogiGkeyInit", "ptr", DllStructGetPtr($Strukt))
    If @error Then MsgBox (0, "ERROR", "DllCall 'LogiGkeyInit'" & @CRLF & @CRLF & $DC_IN)

    [/autoit] [autoit][/autoit] [autoit]

    While True
    $DC = DllCall ($DO, "bool:cdecl", "LogiGkeyIsKeyboardGkeyPressed", "int", 10)
    ToolTip ($DC)
    Sleep (500)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _Callback($keycode, $btnname, $context) ;$context ist struct.context
    $key_idx = BitAnd($keycode, 0xff)
    $key_down = BitAnd(BitShift($keycode, 8), 0x01)
    $m_state = BitAnd(BitShift($keycode, 9), 0x03)
    $is_from_mouse = BitAnd(BitShift($keycode, 10), 0x01)
    EndFunc

    [/autoit]
  • Logitech Gaming Tastatur - UDF

    • SchrotterChris
    • 21. Februar 2015 um 13:35

    Hallo CentuCore.

    Vielen Dank für deine Erklärung das hab ich jetzt mal verstanden wieso das genau so gemacht werden muss.
    Die dll ist eine 32Bit Version indemfall muss ich die Änderung nicht machen von dword auf uint64.


    Ich bekomme das leider gar nicht hin hab auch rumgesucht wie das genau der Aufruf "typedef struct" in Autoit funktioniert leider konnte ich mit den Ergebnissen nicht weiter kommen :/.


    Versuch 1

    Dieser Versuch läuft mal jedoch gibt er wieder andauernd 0 zurück das keine Taste gedrückt wurde.

    [autoit]

    $callback = -1

    [/autoit] [autoit][/autoit] [autoit]

    $Strukt = DllStructCreate("ptr context; ptr callback")
    $callback = DllCallbackRegister("_Callback", "none:cdecl", "dword;wstr;ptr")
    $Strukt.context = Null
    $Strukt.callback = DllCallbackGetPtr($callback)

    [/autoit] [autoit][/autoit] [autoit]

    $dll = @ScriptDir & "\GKY.dll"

    [/autoit] [autoit][/autoit] [autoit]

    $DO = DllOpen ($dll)
    $DC_CB = DllCall ($DO, "bool:cdecl", "logiGkeyCB", "void", $Strukt)
    If $DC_CB = @error Then MsgBox (0, "", "ERROR")
    $DC_IN = DllCall ($DO, "bool:cdecl", "LogiGkeyInit", "bool", $Strukt)

    [/autoit] [autoit][/autoit] [autoit]

    While True
    $DC = DllCall ($DO, "bool:cdecl", "LogiGkeyIsKeyboardGkeyPressed", "int", 10)
    ToolTip ($DC)
    Sleep (500)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _Callback($keycode, $btnname, $context) ;$context ist struct.context
    $key_idx = BitAnd($keycode, 0xff)
    $key_down = BitAnd(BitShift($keycode, 8), 0x01)
    $m_state = BitAnd(BitShift($keycode, 9), 0x03)
    $is_from_mouse = BitAnd(BitShift($keycode, 10), 0x01)
    EndFunc

    [/autoit]
    Versuch 2

    Dieser Versuch läuft mal jedoch gibt er wieder andauernd 0 zurück das keine Taste gedrückt wurde.

    [autoit]

    $str = "int keyIdx;" & "int keyDown;" & "int mState;" & "int mouse;" & "int reserved1;" & "int reserved2;"
    $Strukt = DllStructCreate($str) ; struktur generieren
    DllStructSetData($Strukt,"keyIdx","12")
    DllStructSetData($Strukt,"keyDown","1")
    DllStructSetData($Strukt,"mState","2")
    DllStructSetData($Strukt,"mouse","1")
    DllStructSetData($Strukt,"reserved1","4")
    DllStructSetData($Strukt,"reserved2", "16")

    [/autoit] [autoit][/autoit] [autoit]

    $dll = @ScriptDir & "\GKY.dll"

    [/autoit] [autoit][/autoit] [autoit]

    $DO = DllOpen ($dll)
    $DC_CB = DllCall ($DO, "bool:cdecl", "logiGkeyCB", "wchar", $Strukt)
    $DC_IN = DllCall ($DO, "bool:cdecl", "LogiGkeyInit", "ptr", $Strukt)

    [/autoit] [autoit][/autoit] [autoit]

    While True
    $DC = DllCall ($DO, "bool:cdecl", "LogiGkeyIsKeyboardGkeyPressed", "int", 10)
    ToolTip ($DC)
    Sleep (500)
    WEnd

    [/autoit]
  • Logitech Gaming Tastatur - UDF

    • SchrotterChris
    • 18. Februar 2015 um 17:46

    Hallo CentuCore.

    Vielen Dank werde es testen melde mich sobald ich es getestet habe :)

    LG Chris


    ____ EDIT ____

    Hallo CentuCore.

    Ich stell mich glaub komplett bekloppt an ^^, bekomm das nicht hin.

    hab es auch noch auf eine andere weise Probiert funktioniert leider auch nicht :(

    Versuch 2 (DLL)
    [autoit]

    $DSC_STRING = 'ushort complete;int keyDown;int mState;int mouse; int reserved1;int reserved2;'
    $DSC = DllStructCreate($DSC_STRING)
    DllStructSetData($DSC, "complete", "6")
    DllStructSetData($DSC, "keyDown", "1")
    DllStructSetData($DSC, "mState", "1")
    DllStructSetData($DSC, "mouse", "0")
    DllStructSetData($DSC, "reserved1", "")
    DllStructSetData($DSC, "reserved2", "")

    [/autoit]

    Mit den Dokus komm ich auch nicht weiter.
    Mit den Dokus von der LED war es ein stück einfacher bekomme das mit dem Parameter für Init nicht hin geschweige die Buttons abfragen. :(

    Screenshot "DLL Export Viewer"

    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

  • Logitech Gaming Tastatur - UDF

    • SchrotterChris
    • 17. Februar 2015 um 11:04

    Hallo CentuCore.

    Ja das mit dem WithoutCallback das stand bei der Beschreibung dabei bei Init hatte das gestern noch getestet und vergessen rauslöschen... :/.
    Bei Init der erste Parameter komme da mit nicht so klar in der Doku wird ein StructLayout erstellt jedoch weiß ich nicht wie ich das in AutoIt umsetzten soll.

    komm mit der Beschreibung aus der Doku nicht ganz klar bei dem Aufruf "[StructLayout(LayoutKind.Sequential, Pack=2)]"

    Könnte mir da jemand erklären was das genau ist dachte zuerst an DllStuctCreate aber hab dies leider noch nie verwendet :(.

    LG Christian

  • Logitech Gaming Tastatur - UDF

    • SchrotterChris
    • 16. Februar 2015 um 21:16

    Hallo BugFix.

    Danke für deine Antwort jedoch habe ich die LCD und LED Steuerung bereits abgeschlossen :).
    Brauch hilfe bei der Gkey Ansteuerung die will nicht so wie ich will bzw Antwortet nur "False".

    LG Chris

  • Logitech Gaming Tastatur - UDF

    • SchrotterChris
    • 16. Februar 2015 um 19:20

    Guten Abend :)


    Sitze seit einige Tagen am Rätseln und googeln wie ich das Problem hin bekomme... leider bis jetzt Fehlanzeige :(.

    Ich habe Folgendes Problem will eine UDF für die Logitech Gaming Tastatur / Maus schreiben.
    LCD-Display und LED-Beleuchtung funktionieren.
    ARX-Control habe ich noch nicht in "Angriff" genommen.

    Mein Problem ist zurzeit bei der G-Tasten es funktioniert nicht zum die Tastendrücke abfangen bzw abfragen...
    Habe mein bisheriger Stand hochgeladen incl. dll's.

    Hoffe auf Hilfe komm einfach nicht weiter :(.


    Doku Download -> klick HIER (link zur Logitech-Seite).


    LG SchrotterChris

  • ACCESS 15.0 Erweiterung

    • SchrotterChris
    • 18. November 2014 um 16:39

    Hallo Community ;)


    Ich hatte zu dem Thema "Erweiterung" AutoIt - ACCESS 15.0 (2013) leider nichts gefunden bis auf ältere ACCESS Versionen, hatte ich mich dazu entschieden für meine Bedürfnisse ein eigenes zu erstellen.
    Mit diesem Beitrag möchte ich euch meine "Erweiterung" bereitstellen.

    PS: Ich hatte es für meine Bedürfnisse angepasst und bin damit zufrieden, Erweiterungsvorschläge höre ich jedoch gern.
    Fein wären Script-teile wo ich dann nur einfügen müsste (der Name wird dann natürlich in dem Header erwähnt).


    Voraussetzung:
    • Microsoft Access 2013-Runtime 32Bit
    Versionen und Änderungen:
    • 1.0 (Aktuell)

    Mit freundlichen Grüßen SchrotterChris

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™