Andere Programme starten in Java?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Der Link zu den Problemen mit Runtime.exec() http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html

Die Anwendung:
Process prozess = Runtime.getRuntime ().exec ("/folder/auszufuehrendeExec.exe");

Um die Ausgaben des Prozesses umzuleiten noch:
stdin = prozess.getOutputStream ();
stderr = prozess.getErrorStream ();
stdout = prozess.getInputStream ();

Die althergebrachte Variante ist die java.lang.Runtime.exec Methode (die aber ein paar Tücken hat, beschrieben im Artikel "When Runtime.exec() won't").

Seit Java 5 gibt's dafür auch die java.lang.ProcessBuilder Klasse.

Minecraft Adventure Craft Java-Script Programmierung

Unzwar würde ich gern wissen wo man das lernen kann, openbooks usw... (leicht verständlich )

Ich würde zu gerne eine tolle Map erstellen aber dazu hätte ich gerne custom mops und waffen. Danke

...zur Frage

Was ist der Unterschied zwischen einem Compiler-Fehler und einem Laufzeitfehler (Java)?

Hallo zusammen,

wie kann man einen Compiler-Fehler von einem Laufzeitfehler unterscheiden? Wie äußern sich die jeweiligen Fehler? Ich frage deshalb, weil ich in einem vorgegeben Code angeben muss, an welcher Stelle Compiler-Fehler und an welcher Laufzeitfehler entstehen. Es geht um Java.

...zur Frage

Win7: Nach dem Starten von Programmen ist nur der Prozess im Taskmanager sichtbar.

Guten Tag!

Ich habe mir Battlefield 3 gekauft und auch installiert. Nachdem ich gespielt habe, beende ich das Programm auf ganz gewöhnliche Art.


Nun kommen wir zum eigentlich Problem: Nachdem ich BF 3 beendet habe, lässt sich keines meine Programme mehr starten, bzw. starten vielleicht schon, aber die Programme welche ich starte, werden mir nicht in Form eines Fensters o.ä. gezeigt. Ich kann lediglich durch öffnen des Taskmanagers feststellen, das der jeweilig Prozess zu jedem "gestarteten" Programm läuft. Ein Beispiel: Ich starte nach dem Beenden von BF 3 das Programm Skype. Die einzigen Reaktion die mein Computer daraufhin zeigt, ist der Kreisel an der Maus, es erscheint jedoch kein Fenster. Dies passiert auch nach mehrmaligem anklicken des Skype Icons, auch wenn ich direkt die .exe starte sowie als Administrator ausführe. Beende ich den Prozess via Taskmanager und starte Skype erneut, bleibt das Problem bestehen. Dieses Problem tritt bei fast allen anderen Programmen auf, nur Internet Explorer (64-Bit) funktioniert noch fehlerfrei. Wenn ich das Problem beheben möchte, bleibt mir bis jetzt nur der Neustart des Computers. Das komische ist, dass dieses Problem unregelmäßig auftritt, sprich, nicht immer nachdem ich BF 3 beendet habe. Mal kann ich die Programme ganz normal starten und mal nicht. Das Problem tritt auch manchmal erst nach einer bestimmten Zeit auf. Ich bin mir nicht zu 100% sicher, ob es wirklich mit BF 3 zusammenhängt, da man um BF 3 zu spielen auch noch einen Browser öffnen muss. Es ist jedoch egal in welchem Browser (Firefox, Chrome, Opera, Internet Explorer (32-Bit) ich BF 3 starte, das Problem tritt auf die selbe Art und Weise auf.

PS: Internet Explorer 64-Bit funktioniert nicht, da BF 3 nur 32-Bit Anwendungen unterstützt.


Info's zu meinem Computer:

Software: Windows 7 Home Premium 64-Bit || Virusprogramm: Microsoft Securety Essencials (keine Viren) || Updates: Aktuell (Stand 8.12.11) || Treiber: Aktuell (Stand 8.12.11)

Hardware: AMD Radeon HD 6950 || Samsung HD103UJ ATA Device (Laut Win Fehlerfrei) || AMD Phenom II X4 955 (Standardtakt, gut gekühlt) || D-Link DWA-547 RangeBooster N650

Falls ihr sonst noch Info's braucht, immer gerne fragen, schließlich bin ich der, der Hilfe braucht =).

...zur Frage

Java: Wie kann ich in switch-Statements Benutzereingaben verarbeiten?

Hallo!

Also, ich muss eine Ampel in Java basteln. Die Ampel soll wechseln:

rot => rot-gelb => gelb => grün => rot => rot-gelb => gelb...

Ich habe jetzt ein Switch Statement (switch case) verwendet:

 public class TrafficLight {
public static void main(String[] args) {

    int tl = 2;
    String tlString;
    switch (tl) {
        case 1:  tlString = "red";
                 break;
        case 2:  tlString = "red-yellow";
                 break;
        case 3:  tlString = "green";
                 break;
        case 4:  tlString = "yellow";
                 break;
        default: tlString = "Invalid tl";
                 break;
    }
    System.out.println(tlString);

}
 }

Das funktioniert schonmal, aber ich bekomme nur „red-yellow” als Ausgabe. Damit ist die 1. Hälfte getan. Nun müsste der Benutzer nur noch eine Aktion machen (z.B. „c” eingeben). und dann sollte die Ampel umschalten (also auf grün wechseln). Ich habe also mit

  import java.util.Scanner;

den Scanner importiert (1. Zeile) und dann zwischen die letzten beiden geschweiften Klammern (s.o.)

public static void input(String[] args) {

    Scanner scan = new Scanner(System.in);
    int y = scan.nextInt();

    System.out.println("Please enter a the letter c:");
    int year = scan.nextInt();

}

eingefügt. Aber Java gibt noch nichtmal die Ausgabe aus, dass eine Eingabe erwartet wird und Eingaben sind auch nicht möglich! Was mache ich falsch? Oder ist die Idee generell falsch?


Hier die Aufgabe im Original:

Implementieren Sie die Steuerung einer Verkehrsampel. Die Verkehrsampel kann sich dabei ausschlielich in einem der folgenden vier Zustände benden: rot, rot-gelb, grün und gelb. Die Ampel darf dabei nur von rot auf rot-gelb, von rot-gelb auf grün, von grün auf gelb und von gelb auf rot umschalten. Schreiben Sie eine Klasse TrafficLight, die diesen Anforderungen genügt. Die Klasse soll jeweils eine Methode zum Weiterschalten der Ampel zwischen den erlaubten Zuständen anbieten. Ferner sollte es möglich sein, denaktuellen Zustand der Ampel auf den Bildschirm auszugeben. Schreiben Sie eine Main-Methode, in der Sie ihre Implementierung gründlich testen.


Danke im Voraus!

...zur Frage

Gibt es in Java eine Art Benachrichtigunsfenster für Textausgaben?

Hallo, ich möchte in Java einen Text über ein extra Fenster Ausgeben lassen, das einfach mit ok weggedrückt werden kann. Gibt es so etwas? So wie in Delphi die Funktion ShowMessage(); ... oder muss ich das in Java selbst Programmieren?

...zur Frage

Datenbank bei phpmyadmin mit sql-befehl erstellen?

hallo, ich bin gerade dabei eine Tabelle anzulegen nur da kommen immer Fehlermeldungen und das ganz klappt einfach nicht so! CREATE Database db_fernsehverkauf ( Create Table tbl_fernsehverkauf fernsehverkauf_id data (45)); ( Kundennummer INT;

Kundenvorname VARCHAR (45);

Kundenvorname VARCHAR (45);

) ) Es kommt folgende Fehlermeldungen: 3 Fehler wurden während der Analyse gefunden. -Unerkannter Datentyp. (near "data" at position 91) -Ein Komma oder eine schließende Klammer wird erwartet. (near "-" at position 95) -Unerwarteter Statement-Anfang. (near "45" at position 102)

...zur Frage

Was möchtest Du wissen?