IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

lancer executable dans java


Sujet :

avec Java

  1. #1
    Membre du Club
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    39
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2009
    Messages : 39
    Points : 40
    Points
    40
    Par défaut lancer executable dans java
    bonjour
    je veux executer une commande.bat a l'aide du code java.
    j'ai essayé de faire ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
     
         String text=jLabel2.getText();        // jLabel contien C:\\apps\\dcm4che-2.0.23-bin\\bin\\dcmsnd , j'ai essaie avec  dcmsnd.bat 
         String text2=jLabel4.getText();                      //jLabel4 contien DCM4CHEE@localhost:11112
         String text3= jTextField1.getText();               //jTextField contien folder result's
         String concat =text+" "+text2+" "+text3;      //concat nou donne C:\\apps\\dcm4che-2.0.23-bin\\bin\\dcmsnd  DCM4CHEE@localhost:11112 C:\app\images
     
         try{
             Runtime r =Runtime.getRuntime();
             Process p=r.exec(concat);
             p.waitFor();
         }
         catch(Exception e){
             System.out.println("erreur d'excution"+concat+e.toString()); //and the error  is not win32 system
         }
    }
    j'ai essaiyé aussi C:\apps\dcm4che-2.0.23-bin\bin\dcmsnd
    erreur est pour les deux "
    erreur d'excution C:\\apps\\dcm4che-2.0.23-bin\\bin\\dcmsnd DCM4CHEE@localhost:11112 C:\apps\imagesjava.io.IOException: Cannot run program "C:\\apps\\dcm4che-2.0.23-bin\\bin\\dcmsnd": CreateProcess error=193, %1 n'est pas une application Win32 valide
    est ce qu'il y a une idée pour résoudre ce problème ?

    aussi j'ai essaiyé avec: C:\\apps\\dcm4che-2.0.23-bin\\bin\\>dcmsnd ....

    est l'erreur est
    "C:\\apps\\dcm4che-2.0.23-bin\\bin\\>dcmsnd": CreateProcess error=123, Syntaxe du nom de fichier, de répertoire ou de volume incorrecte.
    merci d'avance

  2. #2
    Membre du Club
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    39
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2009
    Messages : 39
    Points : 40
    Points
    40
    Par défaut
    bonjour,
    méthodes exec() de la classe Runtime permettent de lancer une application et non d'interpréter une ligne de commande ! C'est à dire que le programme appelé doit correspondre à un fichier exécutable.

    j'ai essayé tous les runtimes mais je n arrive pas a executer :
    en realite ma commande je l'excute a l'aide du dos
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    C:\apps\dcm4che-2.0.23-bin\bin\dcmsnd DCM4CHEE@localhost:11112 C:\apps\images
    et àa marche bien .
    je veux le faire avec java,je pense que le probleme que ma commande contient des espaces ???

    en faite mon script est

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    String text= jLabel2.getText();
    String[]text1={text};
    String text2=jLabel4.getText();
    String text3= jTextField1.getText();
    String concat = text2+" "+text3+" "+text1;
    jLabel6.setText(concat);
    try{
    Runtime r =Runtime.getRuntime();
    Process p=r.exec(concat, text1);
    p.waitFor();
     
    }
    catch(Exception e){
    System.out.println("erreur d'excution"+concat+e.toString());
    }
    et text1 contien [Ljava.lang.String;@d5c0f9 //alors il n'a pas pris la valeur de text

    ma nouvelle erreur est "
    erreur d'excutiondcmsnd DCM4CHEE@localhost:11112 C:\apps\images [Ljava.lang.String;@d5c0f9java.io.IOException: Cannot run program "dcmsnd": CreateProcess error=2, Le fichier spécifié est introuvable
    il y a le shell system qui m'interprete la commande mais je ne comprend pas comment l'utiliser :quelqu'un peut me donner un exemple j'ai consulter
    http://adiguba.developpez.com/librairies/shell/javadoc/
    mais j'ai pas compris ?

    est ce que vous pouvez me donner une idée comment le faire ?
    merci d'avance

  3. #3
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    Le système a probablement envie de voir la commande comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "C:/apps/dcm4che-2.0.23-bin/bin/dcmsnd" "DCM4CHEE@localhost:11112" "C:/apps/images"
    essaye avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String concat = "\"" + text2 + "\" \"" + text3 + "\" \"" + text1 + "\"";
    concat = concat.replaceAll("\\","\/");
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. lancer un .exe externe dans java
    Par samirs20 dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 22/03/2011, 11h06
  2. Réponses: 3
    Dernier message: 14/07/2010, 14h27
  3. Lancer un executable dans un Domaine
    Par piotrr dans le forum IIS
    Réponses: 0
    Dernier message: 06/08/2009, 14h53
  4. Lancer un executable dans un VBS
    Par metatron dans le forum VBScript
    Réponses: 2
    Dernier message: 18/03/2009, 18h30
  5. [Système] execution de java dans php
    Par Maitrresse dans le forum Langage
    Réponses: 3
    Dernier message: 25/04/2007, 11h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo