AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Tastatureingaben an anderes Programm senden
Thema durchsuchen
Ansicht
Themen-Optionen

Tastatureingaben an anderes Programm senden

Ein Thema von blablab · begonnen am 24. Apr 2006 · letzter Beitrag vom 7. Jun 2006
Antwort Antwort
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#1

Tastatureingaben an anderes Programm senden

  Alt 24. Apr 2006, 20:22
Hallo!

ich habe folgendes Problem:
ich will ein anderes Programm mit meinem Programm fernsteuern. ich benutze bis jetzt PostMessage(handle, wm_keydown, key, 0). das ganze funktioniert auch schon ganz gut, jedenfalls für einzelne tasten. doch sobald ich zb Strg+C senden will geht es nicht mehr. das problem liegt also bei Strg, Alt und Shift.

was noch komisch ist: wenn ich in der prozedure form.onkeydown einfach den key sofort weitersende mit PostMessage(handle, wm_keydown, key, 0) dann klappts auch mit dem shift etc. Doch sobald ich in einer anderen prozedur alle tastatureingaben nacheinander wegsende, reagiert das programm nur zb auf "c" bei "strg+c"...

Vielen Dank schonmal!

Simon
  Mit Zitat antworten Zitat
EDatabaseError

Registriert seit: 11. Mai 2005
Ort: Göppingen
1.238 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Tastatureingaben an anderes Programm senden

  Alt 24. Apr 2006, 21:13
Schau dir mal das an:
Angehängte Dateien
Dateityp: pas sndkey32_104.pas (13,6 KB, 54x aufgerufen)
Tobias
It's not a bug, it's a feature.
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Tastatureingaben an anderes Programm senden

  Alt 26. Apr 2006, 22:09
Vielen Dank für deine Lösung EDatabaseError!

Aber ich möchte mal ganz dreist fragen, geht das auch anders oder auch etwas leichter?

Das Problem ist ja, dass die Tastenereignisse nur an das Programm gehen, welches den Fokus hat. Doch ich kann in meinem Programm leider nicht jedes Mal den Fokus abgeben und ihn mir wieder zurückholen. Dann bleibt noch die Lösung, ich schicke die Ereigniss direkt an mein eigenes Programm, und sende diese dann wieder an das andere Programm weiter. (Mit PostMessage(handle, wm_keydown, key, 0) in FormOnKeyDown) Das funktioniert auch, nur irgendwie kommt mir das ein bisschen umständlich vor...

Gibt es keine andere Möglichkeit Tastenkombinationen (wie zb Strg+C) bei einem anderem Programm zu simulieren?
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Tastatureingaben an anderes Programm senden

  Alt 7. Jun 2006, 14:20
Falls es jemanden interessiert:

SendInput

war das was ich gesucht habe...
  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 05:45 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