Ich arbeite an einer Java-Anwendung, die eine andere Anwendung starten muss. Wenn ich die zweite Anwendung unter Verwendung Runtime.getRuntime().exec()
starte, wird es der aktive Prozess und sein Fenster kommt vor dem Fenster meiner Anwendung. Was ich wirklich tun möchte, ist den Prozess im "versteckten" Modus zu starten, so dass sein Taskleisteneintrag nicht erscheint und sein Fenster anfänglich unsichtbar ist oder hinter meinem Anwendungsfenster. Dann würde meine Anwendung es sichtbar machen oder es nach vorne verschieben, wenn es gut und fertig ist. Ist das möglich oder frage ich zu viel?Eine mit Fenstern gepackte Anwendung, die von einer Java-Anwendung gestartet wurde, ausblenden?
Dies ist für eine Demo. Ich mache mir also keine Sorgen um Sicherheitsprobleme.
Bearbeiten: Daniels Antwort hat mir eine Idee gegeben. Was passiert, wenn ich Powershell zum Aufruf der Anwendung anstelle von CMD.EXE verwende? Werde ich die App ohne das Fenster starten und dann das Fenster zurückbringen? Ich werde Java zum Starten von PowerShell starten, um App zu starten, aber was zum Teufel!
Warum starten Sie diese externe Anwendung nicht, wenn Ihre Anwendung "gut und bereit" ist? Ist es wirklich notwendig, die externe Anwendung vorab zu starten? Dauert es lange zu laden? – Bernard
Nun, die externe Anwendung braucht eine verdammt lange Zeit zum Laden. Es muss im Grunde eine Verbindung zu einem Server über das WWW herstellen, um Informationen zu erhalten, einen Handshake auszuhandeln usw. Ich kann meine Anwendung nicht darauf warten lassen. Also möchte ich es so schnell wie möglich starten und mit anderen Aufgaben fortfahren. – 341008