Applikation über java steuern

Status
Nicht offen für weitere Antworten.
O

ontour

Mitglied
hallo!

ich hab mal eine frage!

ist es möglich über java (ProcessBuilder oder so) eine Applikation (graphisches Programm) zu starten, und die aktionen die man normal mit der maus macht, automatisiert über java ausführt?

also das starten eines programms ist nicht das problem (bin nicht wirklich ein anfänger in java), aber gibt es dann irgendwie die möglichkeit dahingehend einzugreifen, dass man nicht selber einen button drücken ("weiter"-button oder so) muss, sondern dies nach gewissen kriterien über ein java-programm steuern kann?

das problem ist, dass ich nicht zugriff auf die angesprochene applikation habe (also kenne den code nicht, weiß zur zeit noch nicht was ausgeführt wird, wenn auf buttons geklickt wird etc.)

kann man irgendwie herausfinden, welche befehle eine applikation versendet bzw ausführt wenn ein spezieller button geklickt wurde, und diese dann eigentständig in java vielleicht ausführen?!

ich hoffe mein problem ist halbwegs verständlich!

wenn irgendwer anregungen hat, wäre ich sehr dankbar
 
Ebenius

Ebenius

Top Contributor
ontour hat gesagt.:
ich hab mal eine frage!
Echt? ;-)

ontour hat gesagt.:
ist es möglich über java (ProcessBuilder oder so) eine Applikation (graphisches Programm) zu starten, und die aktionen die man normal mit der maus macht, automatisiert über java ausführt? [...]
Hier sollte die Robot-Klasse helfen.

ontour hat gesagt.:
kann man irgendwie herausfinden, welche befehle eine applikation versendet bzw ausführt wenn ein spezieller button geklickt wurde, [...]
Mit nem Debugger kann man das bestimmt herausfinden. Unter Linux hilft evtl. strace.

ontour hat gesagt.:
[...] und diese dann eigentständig in java vielleicht ausführen?!
Mit JNI kann man ja ziemlich viel... :)

Ebenius
 
O

ontour

Mitglied
soooo, danke mal für die schnelle antwort!

also, dass mit "Robot" werd ich mir gleich mal anschaun, hab ich gar nicht gekannt.

und, glaubst du, dass man da dann, je nach dem, was man vom programm als antwort auf einen klick bekommt, dies auswerten und darauf reagieren kann? also sprich es muss nicht immer der gleiche programmablauf sein, sondern wenn ein anderer wert zurück kommt, dass man dann zb einen anderen button klickt (über die java-applikation) ??

wär nämlich schon super! will gar nicht jetzt alles erfragen, werd mich da jetzt weiter in die materie vertiefen, aber natürlich wenn mir jetzt schon einer sagt, dass sowas nicht möglich ist, dann kann ich mir die zeit auch ersparen!
 
Wildcard

Wildcard

Top Contributor
ontour hat gesagt.:
und, glaubst du, dass man da dann, je nach dem, was man vom programm als antwort auf einen klick bekommt, dies auswerten und darauf reagieren kann? also sprich es muss nicht immer der gleiche programmablauf sein, sondern wenn ein anderer wert zurück kommt, dass man dann zb einen anderen button klickt (über die java-applikation) ??
Nein. Du kannst nicht wahllos irgendwelche Methoden eines fremden Programms aufrufen. Mit Robot kannst du klicken und Tastatureingaben simulieren, viel mehr nicht.
Alles weitergehende wird sehr speziell, du musst die nativen Resourcen der Widgets anzapfen und auslesen, das geht nur über die API des Betriebssystems.
Für Automatisierung vielleicht eher eine dieser dämlichen Makro Sprachen wie AutoHotKey, oder AutoIt verwenden.
 
O

ontour

Mitglied
mhm, weiß was du meinst!

das mit dem robot funktioniert auch schon recht gut!

jetzt stellt sich wie gesagt nur die frage, ob ich in java irgendwie unterscheiden kann, ob ein externes programm zb eine positive oder eine negative nachricht versendet (sprich, wenn ein button-klick 2 verschiedene sachen kann (je nach speziellen anforderungen), dass ich dann auch etwas anderes mache!

ist etwas blöd zu erklären, aber ich versuchs:

diese anwendung sendet beim klicken auf einen button irgendetwas (diese irgendwas würd ich gern irgendwie abfangen bzw auslesen können) übers internet irgendwo hin, und dann kommt eine spezielle antwort zurück (die ist noch viel interessanter!!!) auf die ich dann reagieren möchte!

also was dann gemacht wird würd ich schon mit robot zusammenbringen soweit ich gesehen habe, jetzt interessiert mich nur noch, ob ich von einer externen applikation den datenstrom der versendet bzw empfangen wird irgendwie auslesen kann!
auch wenn der dann vielleicht nicht wirklich lesbar wäre, aber dann könnt ich bei den unterschiedlichen möglichkeiten schaun was sich ändert und so vielleicht auf eine lösung kommen!

ich hoffe man kann ungefähr erahnen was ich meine!
 
Wildcard

Wildcard

Top Contributor
Die Antwort kannst du mit einem Sniffer auslesen. Das ist natürlich etwas völlig anderes als den Ergebnis Dialog auszuwerten. Letzteres geht nur mit Robot + Screenshot + Musterabgleich, oder über die Betriebssystem API wenn man die Controls ausliest. Dieser Ansatz funktioniert allerdings nur wenn die Anwendung native Controls verwendet (also zB kein Java Swing).
 
O

ontour

Mitglied
ok, das klingt jetzt mal sehr interessant!

ich glaub wir sind auf einem guten weg ;)

noch mal genauer (in diese richtung habe ich leider noch nicht soviel programmiert)!

also, damit ich das auch verstehe, gibt es einen sniffer in java? der, wenn richtig eingestellt, mir die antwort des externen programms verschafft und ich mir diese anschaun kann?

und ist antwort und ergebnis nicht das gleiche? oder was meinst du da für 2 unterschiedliche dinge??

weil im prinzip wärs mir auch egal (weil 2tere lösung klingt auch gut wenns funktioniert!).
kann ich das alles automatisiert machen (also dass ich selber dann nichts mehr machen muss)? weil dass mit musterabgleich usw versteh ich nicht bzw hab ich keinen schimmer wie sowas realisierbar wär?

aber ich glaub es ist realisierbar, wenn ich mir so anhöre was du mir antwortest! danke auf jedenfall dafür!
 
Wildcard

Wildcard

Top Contributor
also, damit ich das auch verstehe, gibt es einen sniffer in java? der, wenn richtig eingestellt, mir die antwort des externen programms verschafft und ich mir diese anschaun kann?
Nicht auf Programmebene. Du sagst es werden Daten über das Internet geschickt und empfangen. Mit einem Networksniffer kannst du die Pakete abfangen und auswerten. Das ist technisch gesehen etwas völlig anderes als auszuwerten wie das Programm darauf reagiert. Und nein, einen Network Sniffer gibt es mit großer Wahrscheinlichkeit nicht als Java Implementierung da das viel zu Low-Level und hardwarenah ist. Dafür gibt es allerdings fertige Programme deren Ausgabe du mit Java auswerten kannst.
 
O

ontour

Mitglied
ok, klingt gut.

jetzt muss ich nurmehr einen guten sniffer finden, der mir die daten wie ich sie mir wünsche auswertet!

danke erstmal, wenn ich nicht weiterkomme werd ich mich wieder melden ;)
 
Wildcard

Wildcard

Top Contributor
Das sollte kein Problem sein, aus rechtlichen Gründen bin ich allerdings nicht sicher ob der Name hier genannt werden darf ('Hacker' Paragraph). Es hat etwas mit Drähten und englischen Haien zu tun...
 
A

Ariol

Top Contributor
Wildcard hat gesagt.:
Das sollte kein Problem sein, aus rechtlichen Gründen bin ich allerdings nicht sicher ob der Name hier genannt werden darf ('Hacker' Paragraph). Es hat etwas mit Drähten und englischen Haien zu tun...

In der letzten Ausgabe von "Linux-Magazin" war noch ein Artikel drin...
 
O

ontour

Mitglied
ok, danke für den tip, werd mal schaun ob ich die drahtigen haie nicht finde ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Java Applikation über Netzwerk starten Allgemeine Java-Themen 8
O Leerzeichen und Umlaute im Pfad einer Java Applikation machen Probleme Allgemeine Java-Themen 13
O Java-Applikation tut in Netbeans, als JAR nicht, wegen Pfadangaben einer benötigten Datei Allgemeine Java-Themen 8
L Java Applikation Web Anbindung Allgemeine Java-Themen 2
H OOP Setting(config) für Applikation sicheren? Allgemeine Java-Themen 9
L Übergabe an eine eher einfache Java- Applikation wegen Kündigung Allgemeine Java-Themen 1
NicoDeluxe Desktop-Applikation schreiben, wie daten persistent? Allgemeine Java-Themen 9
B Applikation ohne (direkt)Java installiert zu haben auszuführen Allgemeine Java-Themen 8
T Datei öffnen mit eigener Applikation.exe Allgemeine Java-Themen 4
D Methoden Java Applikation Die System Auslastung optimieren ? Allgemeine Java-Themen 7
P Java Applikation mit Webinterface Allgemeine Java-Themen 1
N Objekte an eine andere Applikation übergeben Allgemeine Java-Themen 3
B Best Practice Start-Applikation mit Logger? Allgemeine Java-Themen 3
J java-applikation-1.jar soll java-applikation-2 aufrufen.jar Allgemeine Java-Themen 5
O Interpreter-Fehler WebStart-Applikation startet nicht Allgemeine Java-Themen 5
S Java Applikation zu autostart hinzufügen Allgemeine Java-Themen 7
B JUnit und mehrere Instanzen der selben Applikation Allgemeine Java-Themen 4
S Perfomance Problem mit Java Applikation Allgemeine Java-Themen 4
MrGe Java-Applikation und OpenOffice/UNO Allgemeine Java-Themen 2
F Parameter für Java Applikation per xml ins Meta-inf speichern? Allgemeine Java-Themen 3
C Java Applikation Benutzerkontrolle Allgemeine Java-Themen 3
S Profiler-Funktionen in eigener Applikation nutzen..? Allgemeine Java-Themen 5
J Aus Applikation ein Applet machen Allgemeine Java-Themen 5
S Java Webstart Applikation in den Autostart? Allgemeine Java-Themen 3
T Gewährleisten das Applikation läuft!? Allgemeine Java-Themen 2
X Aus Java Applikation externes Programm starten Allgemeine Java-Themen 3
R JAR-Update in laufender Applikation Allgemeine Java-Themen 9
ChackZz Applikation zu Applet umbauen Allgemeine Java-Themen 13
$ Applikation(Left for Dead) mit Parametern Starten Allgemeine Java-Themen 5
D Jython in Applikation einbinden Allgemeine Java-Themen 3
T Applikation für RGB LED Matrix Allgemeine Java-Themen 7
PAX Applikation sich selbst neu starten lassen Allgemeine Java-Themen 27
Q daten propertie datei aus anderer applikation Allgemeine Java-Themen 6
M Beenden einer externen Java-Applikation Allgemeine Java-Themen 11
H Php Script aus Java Applikation starten Allgemeine Java-Themen 2
B Browser link aus Java-Applikation öffnen Allgemeine Java-Themen 2
A Setup von einer Java-Applikation starten Allgemeine Java-Themen 4
B Java Applikation incl. dll unter Linux ausführen? Allgemeine Java-Themen 11
M Nur eine laufende Applikation erlauben? Allgemeine Java-Themen 12
M Textfenster von fremder Applikation lesen Allgemeine Java-Themen 5
M wav in Applikation abspielen Allgemeine Java-Themen 2
mabu MediaCenter Applikation in Java realistisch oder nicht? Allgemeine Java-Themen 11
J Merkwürdiger Fehler: Applikation hängt einfach, Quartz-bug? Allgemeine Java-Themen 6
E NT-Anmeldung in Java Client-Applikation nutzen. JAAS ? Allgemeine Java-Themen 5
P DB-Applikation mit GWT-Frontend Allgemeine Java-Themen 3
D Startverhalten Java-Applikation Allgemeine Java-Themen 7
A Java-Applikation auf einem anderen Rechner starten Allgemeine Java-Themen 17
D Plattformunabhängiges ausführbare Java-Applikation ohne jar Allgemeine Java-Themen 5
G überpüfen ob bereits instanz von java applikation läuft Allgemeine Java-Themen 4
L Ressourcen Java Applikation Allgemeine Java-Themen 4
D Name der Java-Applikation Allgemeine Java-Themen 2
G Java Applikation stürzt ab :!: Allgemeine Java-Themen 5
I JAR aus Applikation in neuer VM ausführen Allgemeine Java-Themen 9
clemente Swing Applikation killt kwin Prozess (unter Linux / KDE) Allgemeine Java-Themen 3
M Java Applikation Slideshow Allgemeine Java-Themen 13
D Japplet in Applikation einbinden Allgemeine Java-Themen 2
G Fehler beim Ausführen einer Applikation Allgemeine Java-Themen 4
C Java Applikation - Schrift . (formatieren, effekte) Allgemeine Java-Themen 4
W Kleines Applet in Standard Java Applikation umwandeln Allgemeine Java-Themen 3
Z suche feedback zum entwurf einer applikation Allgemeine Java-Themen 2
D Applet in Applikation einbinden? Allgemeine Java-Themen 4
C Türme von Hanoi-Umschreiben von Applet in Applikation, Rekur Allgemeine Java-Themen 2
G Applikation in Website einbinden Allgemeine Java-Themen 3
S Web Applikation wird immer langsamer Allgemeine Java-Themen 5
G idee für java applikation Allgemeine Java-Themen 3
G eigene uhrzeit in einer java applikation führen Allgemeine Java-Themen 19
thE_29 Java Applikation ohne grafische Oberfläche Allgemeine Java-Themen 24
G Nur eine Instanz einer Applikation Allgemeine Java-Themen 4
G Java Applikation von einem Browser steuern Allgemeine Java-Themen 8
M Einstellung einer Applikation speichern? Allgemeine Java-Themen 8
A wie bekomme ich Applikation zum Laufen Allgemeine Java-Themen 3
P Welches JRE braucht meine Applikation? Allgemeine Java-Themen 3
T Applet <-> Applikation Allgemeine Java-Themen 4
X Applikation Java Web Start fähig machen Allgemeine Java-Themen 4
O interess. Applikation-Tunneling, Downloads und IP-Verbergung Allgemeine Java-Themen 3
D Web-basierte Applikation Allgemeine Java-Themen 5
B Keine Musik bei Applikation Allgemeine Java-Themen 9
J Daten über serielle Schnittstelle empfangen Allgemeine Java-Themen 4
L Aufwandsabschätzung: Android-App Aufnahmefunktion (foto) und zweiter Ebene über dem Foto (teiltransparent) Allgemeine Java-Themen 6
M Registry Autostart Eintrag mit Java erstellen (über Windows cmd) Allgemeine Java-Themen 7
OSchriever Programm über Linux-Kommandozeile ausführen Allgemeine Java-Themen 20
J Namen von Methoden über Reguläre Ausdrücke bearbeiten Allgemeine Java-Themen 6
M Schnelleres Speichern von XML-Daten über URLConnection Allgemeine Java-Themen 4
M Keine weitere Eingabe in der Main möglich. Eventueller Ansatz über while. Allgemeine Java-Themen 8
L Methoden Über Reflections eine Methode mit aufrufen Allgemeine Java-Themen 3
Drachenbauer Wie kann eine vorgegebene Farbe über einen String erkannt werden? Allgemeine Java-Themen 11
W Variablenübergabe über mehrere Klassen Allgemeine Java-Themen 4
N Über einen Button in JavaFX ein Event über eine Pipeline schicken(Netty) Allgemeine Java-Themen 1
M Threads über Kommandozeile Allgemeine Java-Themen 5
david19 Software AE über Domain laufen lassen Allgemeine Java-Themen 0
Q Selbständig ActionEvent auslösen zum Daten senden über serielle Schnittstelle Allgemeine Java-Themen 7
T Problem mit externen Datenbankzugriff über SSH Tunnel Allgemeine Java-Themen 4
K Auf Dateiverzeichnis extern zugreifen (evtl über XML??) Allgemeine Java-Themen 22
C VisualVM oder Jconsole über Jolokia-Proxy Allgemeine Java-Themen 0
G USB-Pins über Java ansteuern Allgemeine Java-Themen 8
E Best Practice Localization über ResourceBundle Allgemeine Java-Themen 6
C Classpath Neue Klasse über einen Button ausführen Allgemeine Java-Themen 3
C Auslesen auslösen über Button-Click Allgemeine Java-Themen 8
M Fragen beantworten über Textfeldeingabe Allgemeine Java-Themen 5
AssELAss Best Practice Checksumme über jede Spalte zweier Tabellen und vergleichen Allgemeine Java-Themen 3

Ähnliche Java Themen

Anzeige


Oben