tutorials.de Buch-Aktion 02/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
574
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    webweasel webweasel ist offline Grünschnabel
    Registriert seit
    Dec 2007
    Beiträge
    2
    Hallo miteinander,

    Zwecks Parametrisierung möchte ich eine Anwendung fremdstarten.
    Tue ich das mittels cmd bekomme ich während der Laufzeit entsprechende Statusmeldungen zurück.

    z.B. so:

    PrintNet T Designer Console 6.2.54
    Status message 0881:Reading config file
    ...
    Status message 0596:Imposition script preprocessing started.
    Complete run time: 0:00:02.813

    Das gleiche Ergebnis hätte ich gerne über Java erreicht. Jedoch bekomme ich die Meldungen hier nicht step by step zurück sondern alle auf einmal wenn die Anwendung komplett durchgelaufen ist. Kennt jemand eine Möglichkeit da ein bisschen Dynamik rein zu bekommen? Wäre super. Die geballten Statusmesages aufeinmal erschlagen mich total.

    Hier mein verwendeter Quellcode:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    
    try 
    {           
       Process proc = Runtime.getRuntime().exec("\\\\192.168.0.9\\C\\PNetTC.exe "+ params);
       Scanner sc = new Scanner(proc.getInputStream());
       StringWriter sw = new StringWriter();
       PrintWriter pw   = new PrintWriter(sw);
       while(sc.hasNextLine())
       {
          pw.println(sc.nextLine());
       }
       System.out.println(sw);          
    }
    catch(Exception e){System.err.println(e.toString());}
     

  2. #2
    Avatar von Akeshihiro
    Akeshihiro Akeshihiro ist offline Mitglied Platin
    Registriert seit
    Aug 2008
    Ort
    Kirchlengern (NRW)
    Beiträge
    575
    Es ist ja auch kein Wunder, dass bei dir die Ausgabe als Komplettpacket ausgegeben wird, so steht es ja auch in deinem Code.

    So sollte das passieren, was du dir vorstellst. Allerdings noch nicht getestet.
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    try {
        Process proc = Runtime.getRuntime().exec("\\\\192.168.0.9\\C\\PNetTC.exe "+ params);
        Scanner sc = new Scanner(proc.getInputStream());
        while(sc.hasNextLine()) {
            System.out.println(sc.nextLine());
        }
    } catch(Exception e) {
        System.err.println(e.toString());
    }
     
    Man sagt, das Schwert eines Samurai sei seine Seele ...

    Mit den Beiträgen ist es wie mit Schwertern: Je besser die Rohstoffe sind und je öfter man diese bearbeitet, desto hochwertiger sind sie.

    Das Schmieden ist eine Kunst; Das Schreiben auch ;)

  3. #3
    webweasel webweasel ist offline Grünschnabel
    Registriert seit
    Dec 2007
    Beiträge
    2
    Ist mir heute beim aufwachen auch klar geworden ...
    Danke nach Kirchlengern.
    Falls mal wieder jemand drüber stoplpert, die Klasse ProcessBuilder sieht auch recht vielversprechend aus.
     

Ähnliche Themen

  1. Daten in Echtzeit aus SQL Datenbank auslesen
    Von Vectormaster im Forum Javascript & Ajax
    Antworten: 24
    Letzter Beitrag: 05.01.10, 16:29
  2. [C] Windows Messages in DLL (JNI)
    Von Billie im Forum C/C++
    Antworten: 0
    Letzter Beitrag: 21.07.09, 11:21
  3. Antworten: 5
    Letzter Beitrag: 28.03.08, 09:02
  4. [C++] windows messages
    Von rook im Forum C/C++
    Antworten: 4
    Letzter Beitrag: 13.06.03, 16:04
  5. Echtzeit
    Von tomi im Forum PHP
    Antworten: 8
    Letzter Beitrag: 28.05.02, 18:47

Stichworte