AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Hook WH_GESTURENOTIFY

Ein Thema von Mossi · begonnen am 28. Jul 2015 · letzter Beitrag vom 29. Jul 2015
 
Mossi

Registriert seit: 6. Feb 2004
Ort: Wenzenbach
35 Beiträge
 
Delphi 7 Enterprise
 
#1

Hook WH_GESTURENOTIFY

  Alt 28. Jul 2015, 15:19
Hallo zusammen,

ich entwickle an einer Multiscreen-Anwendung und dabei ist eine Aufgabe, dass Eingaben auf dem Hauptbildschirm (Lehrerschirm) auch auf dem zweiten Bildschirm (Projektor, Schülerschirm) ausgegeben werden. Zwichnungen mit der Maus werden dabei mit einem MouseHook (WH_MOUSE) abgefangen und auf dem Schülerschirm ausgegeben.
Jetzt muss ich das Ganze erweitern, um auch Touch-Eingaben auf dem Schülerschirm ausgeben zu können. Dazu hab ich mittlerweile einen zusätzlichen Hook auf WH_GESTURENOTIFY implementiert, der auch angesprochen wird.
Ich hab jetzt schon gelesen, dass man Gestures nicht einfach simulieren kann. Daher hab ich mir gedacht, dass ich die Gestures abfange und in entsprechende MouseEvents umwandle und diese auf dem Schülerschirm ausgeben lasse.
Das Problem an WH_GESTURENOTIFY ist allerdings, dass da noch gar keine Informationen enthalten sind. Dazu denke ich mal, dass ich mit GetGestureInfo die weiteren Informationen abrufen müsste. Aber daran scheitere ich bereits.
Aktuell sieht mein Code im Hook folgendermaßen aus:
Delphi-Quellcode:
lib := LoadLibrary(PChar('user32.dll'))
if lib <> 0 then
begin
  @GetGestureInfo := GetProcAddress(lib, 'GetGestureInfo');
  if @GetGestureInfo <> nil then
  begin
    gestureInfo.cbSize := sizeof(TGestureInfo);
    GetGestureInfo(LongInt(data.lParam), @gestureInfo);
...
Die letzte Zeile liefert mir dann aber false zurück und GetLastError sagt mir "ungültiger Parameter".
Hat jemand Erfahrung damit oder kann mir sagen, was ich da jetzt falsch gemacht habe?

Vielleicht bin ich auch vollkommen auf dem Holzweg und kann mit den Gestures gar nicht arbeiten, sondern müsste stattdessen die WM_TOUCH Events verwenden. Aber jetzt wollte ich es erst einmal nur so probieren, weil WM_TOUCH noch einiges anderes als Vorarbeit verlangen würde.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz