Announcement

Collapse
No announcement yet.

Mit Jbuilder 2005 eine anderes Programm Aufrufen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Mit Jbuilder 2005 eine anderes Programm Aufrufen

    Hallo,
    Ich hätte da mal ne Frage zum Jbuildere 2005.
    Wie kann ich ein anderes Programm (exe) mit einen Button aufrufen.
    Ich habe bereits mit Java normal Programmiert und da funktioniert das mit dem
    Befehl Runtime .
    Nun Kann ich aber denn Befehl nicht einfach übernehmen.
    Könnte mir da einer auf die Sprünge Helfen.
    Das Programm soll aber ohne jegliche Boorland.com Unterstützung
    Funktionieren.
    Vielen Dank Jens

  • #2
    Ich weiß zwar nicht so genau, was du meinst. Denn was hat das Aufrufen eines Programmes aus Java mit JBuilder/Borland zu tun....nämlich nix!

    Ich rufe externe Programme so auf:

    String command(String command) {
    String text = "";
    buffer = new StringBuffer("");
    try {
    Process proc = Runtime.getRuntime().exec(command);
    BufferedReader br = new BufferedReader(new InputStreamReader(proc.getInputStream()));
    while ( (text = br.readLine()) != null) {
    buffer.append(text + "\n");
    }
    br.close();
    }
    catch (Exception ex) {
    buffer.append(ex.toString());
    }
    return( buffer.toString());
    }

    Wobei in buffer evtl. Meldungen des Programmes drin sind.

    Grüße
    Andrea

    Comment


    • #3
      Ja Andreas erst mal vielen Dank,

      Doch das Problem ist ja so das ich den Aufruf über einen Button machen will und ich habe im Tutorium vom Jbuilder dazu nichts gefunden.
      Außer wie ich zB.: einen Save oder Open File vereinbare.
      Und da wirds ja so gemacht das der Quelltext über einen
      "boolean saveFile" vereinbart wird der wiederum mit einen File Chooser eingebunden ist
      und unter dem Button Action ist dann halt nur saveFile();
      vereinbart und das hüpft dann halt in das Hauptprogramm.
      Ich denke mal das ich keinen File Chooser für mein Runtime brauche.
      Aber ich weis halt nicht wie ich das in Borland so vereinbare das es auch Funktioniert.
      Ich werde das mal ausprobieren was Du mir geschickt hast
      aber ich glaube da werde ich wohl wieder ein Syntaxproblem bekommen.

      Vielen Dank Jen

      Comment


      • #4
        Hallo Jens,

        du aktivierst den Design Modus, zieht ein Button auf den Frame/Dialog, wählst den Button aus, gehst auf Ereignisse und fügst das Ereignis actionperformed hinzu, und in den diesen Codeblock fügst du den Runtime Code ein.

        Grüße
        Andreas

        NS. Das Thema hat nichts mit "Enterprise JavaBeans (EJB)" zu tun

        Comment


        • #5
          Ja vielen Dank,
          aber das tu ich ja schon.
          ich will ja eigentlich ein Fortran Programm anstoßen
          nen mir das mal a.out.
          das erste Problem ist ja der kommt mit den String befehl nicht klar
          wenn ich den Ausschalte kommt er mit dem Buffer nicht klar
          das kann ja an meinen Packet oder halt den import zeugs liegen
          obwohl die Fehlermeldung für den String folgendermaßen aussieht:
          ";"expected
          "}"
          fürn Buffer
          can not find symbol: variable buffer location:class in meinen Programm halt
          wie schon gesagt ich arbeite ohne Unterstützung von Borland.com
          und alle import.java dinger sind auch nicht Vorhanden

          nun würde mir es schon helfen wenn der Quelltext etwas Kommentiert wäre, weil ich von der Sache her nicht verstehe was das eigentlich macht
          wo genau sollte den dann nun mein Fortran Programm mit den Namen a.out stehen und kommt nicht in der exec("a.out")
          nicht noch die Anführungszeichen und und und

          hm
          Danke im Voraus
          Jens

          String command(String command) {
          String text = ""; //“?“
          buffer = new StringBuffer(""); //Syntax oder auszuführendes Programm ?
          try {
          Process proc = Runtime.getRuntime().exec("a.out");
          BufferedReader br = new BufferedReader(new InputStreamReader(proc.getInputStream()));
          while ( (text = br.readLine()) != null) {
          buffer.append(text + "\n");
          }
          br.close();
          }
          catch (Exception ex) {
          buffer.append(ex.toString());
          }
          return( buffer.toString());

          Comment

          Working...
          X