Applikation über java steuern

Status
Nicht offen für weitere Antworten.

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

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
 

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

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.
 

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

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).
 

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

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.
 

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

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...
 

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...
 
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 Maven ein externes jar laden ohne die Applikation neu zu kompilieren Allgemeine Java-Themen 4
OnDemand Anzeigen was eine Applikation macht Allgemeine Java-Themen 1
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
OnDemand 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
kodela Datenübergabe über Buttons Allgemeine Java-Themen 8
W Jar-File Start nur über Terminal Allgemeine Java-Themen 13
A ByteArray über Socket Allgemeine Java-Themen 3
berserkerdq2 Text über einen Shape anzeigen (Scenebuilder) Allgemeine Java-Themen 1
I 2D-Grafik Vektor-Grafik über die Zwischenablage nach Adobe Illustrator transferieren Allgemeine Java-Themen 8
TheSkyRider Methode über DataInputStream "auslösen" Allgemeine Java-Themen 6
I OpenPDF erzeugt riesige PDFs, wenn Grafiken über PdfGraphics2D#drawImage gezeichnet werden Allgemeine Java-Themen 1
T Etikettendrucker über TCP-IP Allgemeine Java-Themen 1
Encera Gleichzeitiges Ausführen und verbinden von 2 Java-Klassen über die Eingabeaufforderung und Eclipse Allgemeine Java-Themen 21
B HTTP Allgemeine Fragen über Suchmaschine nutzen mit Java Allgemeine Java-Themen 20
torresbig Klasse mit extends Calendar über Methoden ändern (Hirnblockade) Allgemeine Java-Themen 7
B Liste ändern während Iteration über Diese? Allgemeine Java-Themen 16
Master3000 Java Konsole über Buffered Reader Zeilenweise auslesen ? Allgemeine Java-Themen 26
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
Drachenbauer Wie kann eine vorgegebene Farbe über einen String erkannt werden? Allgemeine Java-Themen 11

Ähnliche Java Themen

Neue Themen


Oben