2 Mäuse in der WinApi



  • Ich suche schon seit einiger Zeit nach einer Möglichkeit, 2 Mäuse ( z.B. beide USB Anschluss ) in der WinApi zu unterscheiden, ob es direkt mit der Nachricht geht oder vorher mit Treibern gepfuscht werden muss. Ich wäre dankbar wenn mir jemand hilfreiche Informationen zukommen lassen könnte 🙂
    Und gleich schon weitergedacht: geht es überhaupt, und wenn ja, wie, mit gtk+/gtkmm? 😉



  • vieleicht hilft 'GetMessageExtraInfo':

    The GetMessageExtraInfo function retrieves extra information associated with the last message retrieved by the GetMessage or PeekMessage function. This information may be added to a message by the driver for a pointing device or keyboard.

    ich weis ja nicht was du genau vor hast, aber ein framework ala gtk.. wird kaum was nützen - ich tippe mal du willst einen 2.ten mauszeiger programieren, falls ja sag bitte bescheid wenn du fertig bist .-)



  • Inwiefern wird ein framework wie gtk nichts nützen?
    Und du liegst richtig, ich möchte mit 2 Mäusen programmieren, dass sie ihren eigenen Mauszeiger bekommen und so 😉



  • der hauptvorteil von gtk etc. ist dass sie einem arbeit bei der erstellung der
    benutzerinterfaces abnehmen und systemaufrufe elegant verpacken. bei deinem
    vorhaben liegt der schwerpunkt aber eindeutig in einer systemnahem problematik
    und da denk ich mir dass sowas sogar stören kann.

    überhaupt stell ich mir das vorhaben nicht so einfach vor (voraus gesetzt eine
    unterscheidung ohne komplett neue treiber ist überhaupt möglich):

    -aus sicht der anwendugsprogramme gibt es nur eine maus d.h. wenn an 2 stellen
    gleichzeitig eine taste gedrückt wird dürfte das für verwirrung sorgen

    -der 2.te mauszeiger muss auf jeden fall selbst gemalt werden (der bekommt auch
    keine infos wie er denn aussehen soll)

    -....

    lösungsansatz (wie gesagt nur fals eine unterscheidung möglich ist):
    eine aktive maus, für die zweite werden alle bewegungen abgefangen
    und damit ein eigener zeiger bewegt. falls bei der zweiten eine taste
    gedrückt wird die zur aktiven.
    die ganze unterscheidung und das abfangen der ereignisse findet in
    einer 'hook' prozedure statt - ich weis jetzt nicht inwieweit du
    damit vertraut bist

    naja versuch erstmal rauszufinden ob die unterscheidung klappt, dann kann ich evtl. auch weitere vorschläge machen - einen zweiten mauszeiger hätte ich ja auch gern 🙂


Anmelden zum Antworten