AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Taste an externe Anwendung (Java) senden - problem
Thema durchsuchen
Ansicht
Themen-Optionen

Taste an externe Anwendung (Java) senden - problem

Ein Thema von ddcool · begonnen am 13. Dez 2007 · letzter Beitrag vom 6. Mär 2008
Antwort Antwort
Seite 1 von 2  1 2      
ddcool

Registriert seit: 8. Jun 2003
146 Beiträge
 
Delphi XE2 Architect
 
#1

Taste an externe Anwendung (Java) senden - problem

  Alt 13. Dez 2007, 09:42
Hallo zusammen,

ich habe da mal wieder ein kleines Problem. Ich möchte gerne einen bestimmten Text in ein Edit im Java-Applet senden und danach im Edit ein VK_RETURN simulieren. Das mit dem Text habe ich folgendermaßen gelöst. Ich habe mir das Handle von dem Java-Fenster geholt und dann das Handle von dem Edit und habe dann per SendMessage ein WM_SETTEXT an das Edti gesendet. Wunderbar funktioniert. Wenn ich jetzt aber per WM_KEYDOWN + WM_KEYUP oder WM_CHAR ein VK_RETURN an das Edit sende, funktioniert es nur wenn der Focus auch im Edit drin ist, sobal der Focus auf einem anderen Fenster oder das Java-Fenster minimiert ist, funktioniert das ganze nicht mehr.
Nun zu meiner Frage:

Ist es möglich es so hinzubekommen, dass das VK_RETURN auch bei minimiertem oder nicht fokusiertem Fenster gesendet wird bzw "greift" ?
Und warum funktioniert WM_SETTEXT ohne Fokus?

Es gab hier und in anderen Foren schon häufiger solche anstöße aber leider ohne Lösung. Vielleicht weiss es ja jetzt wer.

Danke für Eure Hilfe & Grüße

ddcool
  Mit Zitat antworten Zitat
ddcool

Registriert seit: 8. Jun 2003
146 Beiträge
 
Delphi XE2 Architect
 
#2

Re: Taste an externe Anwendung (Java) senden - problem

  Alt 15. Dez 2007, 16:52
*push* Sorry! Hoffentlich weiß es wenigstens jemand.
  Mit Zitat antworten Zitat
ddcool

Registriert seit: 8. Jun 2003
146 Beiträge
 
Delphi XE2 Architect
 
#3

Re: Taste an externe Anwendung (Java) senden - problem

  Alt 5. Mär 2008, 12:38
*push* die zweite. Irgendwer muss doch nen tipp haben.
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#4

Re: Taste an externe Anwendung (Java) senden - problem

  Alt 5. Mär 2008, 13:28
Ich weiß nicht wie das bei Applets ist. Aber bei Swing Anwendungen Scheitern Solche Sachen daran das über den angezeigt "Controls"
eine durchsichtige Komponente liegt die die Maus Interaktion captured und eigenständig verteilt.

Bei Applets wird da immer AWT genutzt?
Müste doch Eigentlich auch in Swing oder SWT gehen ?
Wenn das also ein Swing Applett ist dann könnt es an dem Aufbau von Swing liegen.
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
ddcool

Registriert seit: 8. Jun 2003
146 Beiträge
 
Delphi XE2 Architect
 
#5

Re: Taste an externe Anwendung (Java) senden - problem

  Alt 5. Mär 2008, 13:43
Sorry, bitte was? Swing ist für mich eher eine Musikrichtung.
Hättest du für mich ein Codebeispiel. Ich weiss, dass es ein Applet ist. Aber mit Java kenne ich mich halt nicht wirklich aus.
Vielleicht hilft es dir, wenn ich dir sage, dass es für knuddels ist.
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.686 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: Taste an externe Anwendung (Java) senden - problem

  Alt 5. Mär 2008, 14:28
Das Problem ist, dass Java keine Controls im Sinne von Windows verwendet - prinzipbedingt durch die VM. Lediglich (bei Anwendungen zumindest) das Fenster ist ein Windows-Control, aber alles darin sieht für das OS aus wie ein Bitmap. Wichtig ist dabei, dass dadurch keinerlei Handles existieren, denen man irgendwie etwas mitteilen könnte. Wenn also das Applet/Programm nicht eine Schnittstelle eingebaut hat, die Fernsteuereung möglich macht, ist dort imho kein Weg dranzukomen.

Bzw. einer würde mir einfallen: Screenshot machen, Aufbau des Applets kennen, Mausposition setzen, und dann Tastendrücke z.B. mit AsyncKeystate simulieren. Dabei kommt man ohne Messages an das Ziel aus, muss sich aber leisten eine grafische Interpretation der Anzeige zu machen. Der Aufwand ist nicht zu gering, je nach Komplexiät des Applets.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
ddcool

Registriert seit: 8. Jun 2003
146 Beiträge
 
Delphi XE2 Architect
 
#7

Re: Taste an externe Anwendung (Java) senden - problem

  Alt 5. Mär 2008, 14:38
Ja Problem ist, ich möchte ja gerne auch Messages senden, wenn das Java-Fenster nicht sichtbar ist.
Das Handle bekomme ich ja ohne Probleme. Eine Text an das Edit senden geht auch, sogar bei minimiertem Fenster. Nur ein simpler Tastendruck geht nur, wenn der Fokus auf dem Edit ist.
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#8

Re: Taste an externe Anwendung (Java) senden - problem

  Alt 5. Mär 2008, 14:41
Medium: Hat gerade die Funktionsweise der Swing-Komponenten beschrieben.
Man kann in Java auch Native komponenten benutzen leider nur sehr sehr wenige, eben das was in Linux und Win
gemeinsam vorhanden hist>>>also nur TextFeld, Button, Label...so einfaches zeug halt.

Dann kann man noch die SWT kompnenten verwenden das ist eine Bibliothek von IBM die scheint irgendwie ein gemisch von beidem zu sein
auf jeden Fall ist sie im Vergleich zu Swing schnell...
Sieh dir mal Eclipse an soweit ich weiß basiert das auf SWT.

Welche bibliothek nutzt Knuddles? Vermutlich SWING denn AWT bietet so rein garnichts...

Wenn das der Fall ist hast du einen schweren Stand.

Denn Swing besteht aus einem Fenster, mit 2 Schichten einer Darstellungsschicht (Bitmap) auf der die Komponentengezeichnet werden und darüber eine Glasspane welche alle Desktop Ereignisse abfängt und ins Swing System weiterreicht.


Vielleicht macht es für dich sin das Protokoll von knuddles zu analysieren und einen eigenen Client zu programmieren.
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
ddcool

Registriert seit: 8. Jun 2003
146 Beiträge
 
Delphi XE2 Architect
 
#9

Re: Taste an externe Anwendung (Java) senden - problem

  Alt 5. Mär 2008, 14:46
Heisst also auf gut deutsch: pech gehabt?
Mit Delphi also nicht zu realisieren? Wenn ja, dann aber bestimmt mit Java zu realisieren, wofür ich dann in einem anderen Forum fragen müsste.
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#10

Re: Taste an externe Anwendung (Java) senden - problem

  Alt 5. Mär 2008, 15:14
Nein das geht auch in java nicht 100%.

Versuch mal mit einem der millionen frei verfügbaren packetsniffern herauszufinden was Knuddles
Da hin und herschickt, vielleicht ist es nur ein normaler IRC Standard chat. Dann hast du es einfach.
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 17:31 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