AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Tasten abfangen / Frage zu Hooks
Thema durchsuchen
Ansicht
Themen-Optionen

Tasten abfangen / Frage zu Hooks

Ein Thema von Cubbie · begonnen am 15. Nov 2004 · letzter Beitrag vom 5. Dez 2004
Antwort Antwort
Benutzerbild von Cubbie
Cubbie

Registriert seit: 22. Sep 2003
Ort: Hannover
16 Beiträge
 
Delphi 7 Personal
 
#1

Tasten abfangen / Frage zu Hooks

  Alt 15. Nov 2004, 18:29
Hi,

wie der Titel sagt, möchte ich Tastendrücke abfangen... soweit so gut, das funktioniert auch schon per hook-dll, wie es im hier oft verlinkten Tutorial erklärt ist

Was ich jetzt gern machen würde:
Angenommen ich fange das "A" ab... wenn ich jetzt das A drücke, will ich entscheiden können, ob ein "A" an die Anwendung geschickt wird, die grade offen ist, oder ob das A NUR eine Aktion in meinem Programm auslöst und ansonsten völlig ignoriert wird.

Anderes Beispiel: Taste ist wieder das A
Taste A wird gedrückt -> "A" wird an die Anwendung geschickt
Taste A wird länger als 2 Sekunden gehalten -> Funktion wird ausgelöst, aber "A" wird nicht mehr geschickt

Ich hoffe, das war halbwegs verständlich...

Jedenfalls fehlt mir da der entscheidende Hinweis, wie das zu bewerkstelligen ist.. per Suche hab ich leider nix gefunden.
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#2

Re: Tasten abfangen / Frage zu Hooks

  Alt 15. Nov 2004, 18:32
Hi!

Kannst du mit dem Hook KeyDown und KeyUp abfangen?
Dann kannst du die Zeitdifferenz berechnen.


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von Cubbie
Cubbie

Registriert seit: 22. Sep 2003
Ort: Hannover
16 Beiträge
 
Delphi 7 Personal
 
#3

Re: Tasten abfangen / Frage zu Hooks

  Alt 15. Nov 2004, 18:35
Hm.. das Hauptproblem ist ja, dass ich nicht weiß, wie ich die Taste komplett abfangen kann, d.h. dass unter bestimmten Umständen kein "A" geschrieben wird, um beim Beispiel zu bleiben..
  Mit Zitat antworten Zitat
perle

Registriert seit: 8. Apr 2004
183 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Tasten abfangen / Frage zu Hooks

  Alt 16. Nov 2004, 07:39
also ich kenne mich mit hooks so gut wie garnicht aus, aber klappt es evtl wenn du im Messagehandler des Hooks das CallNextHookEx weglässt? Denn soweit ich verstanden habe, wird dadurch doch das abgefangene an den nächsten Hook weitergegeben und sonst halt nicht oder?

ansonsten kannst du die abgefangene Taste vielleicht einfach durch ein #0 ersetzen und dann weitergeben?
  Mit Zitat antworten Zitat
Benutzerbild von Cubbie
Cubbie

Registriert seit: 22. Sep 2003
Ort: Hannover
16 Beiträge
 
Delphi 7 Personal
 
#5

Re: Tasten abfangen / Frage zu Hooks

  Alt 17. Nov 2004, 23:29
In meinem Message-Handler gibts den Aufruf garnicht..
Und leider auch keine Variable, die mir die Taste nennt. Die wird als lparam einer TMessage übergeben, und der scheine ich dummerweise nix zuweisen zu können oder es hat keine Auswirkung.. keine Ahnung.
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#6

Re: Tasten abfangen / Frage zu Hooks

  Alt 18. Nov 2004, 04:24
Hi Cubbie,

Schau dir doch mal die Komponente Bei Google suchenTWatch Delphi an.
Diese gibt dir sicher Ideen, wie du deinen Hook implementieren kannst und
hilft dir dein Problem zu lösen.
Thomas
  Mit Zitat antworten Zitat
Assarbad
(Gast)

n/a Beiträge
 
#7

Re: Tasten abfangen / Frage zu Hooks

  Alt 5. Dez 2004, 21:39
Bei meinem Hooktut ist ein Beispiel eines Keyloggers dabei. Der loggt die Up/Down-Ereignisse. Du kannst das als Basis für dein Problem nehmen.
Nur eine Taste kann gleichzeitig "Down" sein, es sei denn es handelt sich um eine Escape-Sequenz (Strg/Alt/Alt Gr usw) wo dann zu dem Buchstaben noch ein Flag dazukommt, welches die Ausgabe modifiziert.
  Mit Zitat antworten Zitat
Antwort Antwort


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 07:57 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