Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 13 sur 13
  1. #1
    Expert Confirmé
    Avatar de frenchsting
    Homme Profil pro Claude
    Développeur informatique
    Inscrit en
    juin 2003
    Messages
    1 789
    Détails du profil
    Informations personnelles :
    Nom : Homme Claude
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : juin 2003
    Messages : 1 789
    Points : 2 919
    Points
    2 919

    Par défaut Lancer un .bat avec Java -> cmd.exe inactif

    Bonjour,

    Je ne sais pas si je suis bien dans le bon groupe de discussion, mais je ne tgrouve pas d'infos sur le net pour mon problème.

    je travaille avec un logiciel de transmissions de fichiers (CFT) sous windows xp SP3. Il est interfacé avec Java.
    Dans les paramètres, on peut spécifier un .bat afin qu'il soit exécuté après réception.

    Mon problème : le .bat est bien lancé mais il est inactif : dans le gestionnaire des tâches, un cmd.exe est présent mais rien ne se passe. La fenêtre cmd.exe n'apparaît pas et les commandes ne sont bien sûr pas exécutées.

    S'agit-il d'un problème de sécurité/paramètrage windows/java ?

    Merci pour vos lumières.

  2. #2
    Expert Confirmé Sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    avril 2002
    Messages
    13 026
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : avril 2002
    Messages : 13 026
    Points : 20 808
    Points
    20 808

    Par défaut

    Salut,


    Comment est exécuté ce bat ? Les flux d'entrée/sorties sont-ils traités ?
    Et que fait-il lorsqu'il est lancé manuellement ?

    Un peu de lecture sur le sujet :


    a++

  3. #3
    Expert Confirmé
    Avatar de frenchsting
    Homme Profil pro Claude
    Développeur informatique
    Inscrit en
    juin 2003
    Messages
    1 789
    Détails du profil
    Informations personnelles :
    Nom : Homme Claude
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : juin 2003
    Messages : 1 789
    Points : 2 919
    Points
    2 919

    Par défaut

    Merci pour ta réponse.

    En fait, je n'ai pas du tout la main sur cette appli. C'est un logiciel acheté. Il y a juste un jre installé sur la machine.

    Le . bat (code type en-dessous) peut être lancé manuellement sans problème.
    Je penche pour un problème "d'interdiction" de lancement de la part de windows pour java...

    Code :
    1
    2
    3
     
    cd c:\MonRep
    Copy &FNAME \\Monserveur\cftpc\

  4. #4
    Expert Confirmé Sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    avril 2002
    Messages
    13 026
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : avril 2002
    Messages : 13 026
    Points : 20 808
    Points
    20 808

    Par défaut

    S'il y a quelque chose qui bloquerait l'exécution, alors l'application devrait recevoir une exception et tu ne verrais même pas le process "cmd.exe".


    Après si tu n'as pas accès au programme java ca risque d'être difficile de trouver l'origine du problème.

    a++

    PS : C'est quoi &FNAME dans ton fichier bat ? C'est normal ca ?

  5. #5
    Expert Confirmé
    Avatar de frenchsting
    Homme Profil pro Claude
    Développeur informatique
    Inscrit en
    juin 2003
    Messages
    1 789
    Détails du profil
    Informations personnelles :
    Nom : Homme Claude
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : juin 2003
    Messages : 1 789
    Points : 2 919
    Points
    2 919

    Par défaut

    oui c'est normale : c'est une variable d'environnement créée par le programme CFT. Elle a la valeur du nom physique de fichier.

    merci pour ton aide. C'est ce que je pense : c'est pas java mais plutot la liaison entre java et windows.

  6. #6
    Expert Confirmé Sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    avril 2002
    Messages
    13 026
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : avril 2002
    Messages : 13 026
    Points : 20 808
    Points
    20 808

    Par défaut

    Euh... non j'ai dit que le problème venait surement de la manière dont était appelé le programme dans le code Java...


    Et je viens de vérifier sous le shell DOS le caractère & est un opérateur logique entre deux commandes. Donc cela revient à exécuter deux commande : "Copy" sans paramètre et "FNAME \\Monserveur\cftpc\"

    Tu es sûr de ton batch ?

    a++

  7. #7
    Expert Confirmé
    Avatar de frenchsting
    Homme Profil pro Claude
    Développeur informatique
    Inscrit en
    juin 2003
    Messages
    1 789
    Détails du profil
    Informations personnelles :
    Nom : Homme Claude
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : juin 2003
    Messages : 1 789
    Points : 2 919
    Points
    2 919

    Par défaut

    Le problème pour le lancement depuis l'appli, c'est que je n'ai pas le source. J'ai fait un incident auprès de l'éditeur, mais ils ne sont pas pressés d'une part, et pas sûr qu'ils ne me dient pas que c'est "juste" un problème windows...

    Oui, j'en suis certain.

    Du coup j'ai modifié mon bat :
    Code :
    1
    2
    3
     
    cd c:\windows
    start notepad.exe
    Quand on le lance "manuellement", une fenêtre cmd s'ouvre, le bloc-notes de windows apparaît et la fenêtre cmd se ferme.

    Avec l'appel dans l'appli, rien ne se passe. Juste mon cmd.exe présent dans le gestionnaire des tâches.

    Il faut que je trouve des infos sur la sécurité/gestion des processus de windows.

    Encore merci pour ton aide.

  8. #8
    Expert Confirmé
    Avatar de frenchsting
    Homme Profil pro Claude
    Développeur informatique
    Inscrit en
    juin 2003
    Messages
    1 789
    Détails du profil
    Informations personnelles :
    Nom : Homme Claude
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : juin 2003
    Messages : 1 789
    Points : 2 919
    Points
    2 919

    Par défaut

    Bonjour,

    j'ai eu une réponse (vaseuse) de l'éditeur. En fait, tout fonctionne si il n'y a pas d'affichage. Toutes les commandes doivent être redirigées vers un fichier qui sert de console. Par exemple :
    Code :
    1
    2
    Set Fic=c:\Monfichier.txt
    echo toto>> %Fic%
    Le seul hic, c'est que beaucoup de commandes ne fonctionnent pas (notamment les copy, start et autres réjouissantes instructions)

    Dans tous les cas, ce n'est pas un problème java quin'est là que pour faire de l'affichage.

    Merci pour votre aide.

  9. #9
    Expert Confirmé Sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    avril 2002
    Messages
    13 026
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : avril 2002
    Messages : 13 026
    Points : 20 808
    Points
    20 808

    Par défaut

    Citation Envoyé par frenchsting Voir le message
    En fait, tout fonctionne si il n'y a pas d'affichage.
    En clair cela signifie qu'ils se content de lancer le programme sans gérer les flux d'entrées/sorties...


    a++

  10. #10
    Expert Confirmé
    Avatar de frenchsting
    Homme Profil pro Claude
    Développeur informatique
    Inscrit en
    juin 2003
    Messages
    1 789
    Détails du profil
    Informations personnelles :
    Nom : Homme Claude
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : juin 2003
    Messages : 1 789
    Points : 2 919
    Points
    2 919

    Par défaut

    C'est un peu plus subtil. C'est juste une interface qui scanne et interagit à intervalles réguliers l'action de programmes cachés.

    L'exécution est faite par un programme caché mais l'interface java est juste un emballage qui permet de faire des saisies plus simples qu'ne ligne de commande

  11. #11
    Expert Confirmé Sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    avril 2002
    Messages
    13 026
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : avril 2002
    Messages : 13 026
    Points : 20 808
    Points
    20 808

    Par défaut

    Oui mais le fait que le script ne fonctionne pas si on ne redirige pas vers un fichier indique qu'ils ne gèrent pas les flux d'entrée/sorties

    S'ils ne veulent vraiment pas les gérer, il faudrait au moins qu'il les fermes directement après avoir lancé le process, pour éviter ces blocages...


    a++

  12. #12
    Expert Confirmé
    Avatar de frenchsting
    Homme Profil pro Claude
    Développeur informatique
    Inscrit en
    juin 2003
    Messages
    1 789
    Détails du profil
    Informations personnelles :
    Nom : Homme Claude
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : juin 2003
    Messages : 1 789
    Points : 2 919
    Points
    2 919

    Par défaut

    Bon... Un collègue d'un autre site m'a donné la solution. Il avait eu un problème similaire.

    Il faut que la case "autoriser interaction avec le bureau" soit cochée.

  13. #13
    Expert Confirmé Sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    avril 2002
    Messages
    13 026
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : avril 2002
    Messages : 13 026
    Points : 20 808
    Points
    20 808

    Par défaut

    Citation Envoyé par frenchsting Voir le message
    Il faut que la case "autoriser interaction avec le bureau" soit cochée.
    Bizarre ça

    Ce n'est pas du Java ça. C'est quoi cette option ? C'est dans ton application ???


    a++

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •