Programm, das nach abgearbeiteter main Methode weiterläuft

Keine Ahnung, hab kein Windows.

Gibst da überhaupt während des laufenden Betriebs ein Fenster, in dem du das beliebig oft eingeben kannst?
 
Ja. Es gibt Programme, die vor dem Start ein Adminpasswort benötigen. Der ganze Bildschirm rückt in den Hintergrund und es öffnet sich ein Dialogfenster, in dem man den Nutzer einmalig auswählt und dann beliebig oft das Passwort eingeben kann.
 
Dann probier einfach aus, wie oft du was falsches eingeben kannst^^

Ich würde aber denken, dass da generell verhindert wird, das irgendein Java-Programm da was eintippt...
 
Ja, das muss ich auch noch austesten. Wobei ein Limit an falschen Eingaben überflüssig wäre. Ich könnte das Fenster ja einfach nochmal öffnen. Aber dass das verhindert wird, kann sein. Glaubs aber auch nicht, weil Java arbeitet ja via Robot mit lowest-Level-Input. Der unterscheidet sich eigentlich nicht mehr von Nutzerinput, so wie das aussah.
 
Zuletzt bearbeitet:
Das wird sich herausstellen. Ich schreibe mal zuerst eine Anwendung, die immer den gleichen falschen String eingibt und dabei zählt. Wenn ich fertig bin, poste ich, was dabei rauskam.
 
Ich würde aber denken, dass da generell verhindert wird, das irgendein Java-Programm da was eintippt...
Ich glaube auch nicht, dass man da einfach so reinschreiben kann. Ich spekuliere mal, dass der Robot letztendlich das jeweilige Betriebssystem-API nutzt, so dass es unter Kontrolle des Betriebssystems geschieht. Kann mir nicht vorstellen, dass Windows im Kennwort-Dialog etwas akzeptiert, dass nicht direkt von der physikalischen Tastatur kommt. Wahrscheinlich müsste man dazu den Tastaturtreiber manipulieren. Ist aber nur geraten. Ich weiß nicht, ob es sich wirklich so verhält.

Es ist vermutlich einfacher, zu versuchen auf eine Netzwerk-Ressource zuzugreifen. Dann kann man sich den KeyLogger und diese seltsame Geschichte mit den Pixel-Farben sparen, deren Sinn sich mir noch nicht erschlossen hat. Darüber wird man aber auch kaum in einer akzeptablen Zeit auf genug Versuche kommen.
 
Ich hab' ja schon ein Fenster geschrieben, das 2 Integer multipliziert. Ein Erfolgserlebnis ist das aber nicht. Man kann es für nichts verwenden.
das ist in etwa so wie als Auto-Mechatroniker: "ich habe schon mal eine Mutter auf eine Schraube gedreht, aber damit kann man ja nichts anfange, ich baue jetzt ein Spaceshuttle"
 
Bei Erfolg und Abbruch soll das Programm sich schließen. Dann kann es seiner Aufgabe ja nicht mehr nachkommen. Bei Fehlversuch ändert sich die Farbe nur kurz. Das regel' ich mit einem Timer.
 
Ich verstehe nicht, warum diese kleine Testklasse nicht funktioniert.
Java:
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;

public class Main {
   public static void main() throws AWTException {
       Robot robot = new Robot();
       while(true) {
           robot.keyPress(KeyEvent.VK_A);
           robot.keyRelease(KeyEvent.VK_A);
       }
   }
}
 
Zuletzt bearbeitet:

Zurück
Oben