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

VBScript Discussion :

Exécuter un programme dans un script et récupérer le code retour


Sujet :

VBScript

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 19
    Points : 12
    Points
    12
    Par défaut Exécuter un programme dans un script et récupérer le code retour
    Bonjour

    Ça fait maintenant plus d'une journée que je m'escrime à exécuter un programme externe par un VBScript (qui sera lancé en ligne de commandes) pour récupérer son code retour et alors que je pensais avoir touché au but, ça ne fonctionne toujours pas.

    Voici où j'en suis, le script suivant :
    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
    17
    Option Explicit
     
    Dim WshShell, job, jobStatus
    Set WshShell = CreateObject("WScript.Shell")
    Set job = WshShell.Exec("java")
    Do
      WScript.stdOut.Write job.stdOut.ReadAll
      Wscript.stdErr.Write job.stdErr.ReadAll
      jobStatus = job.Status
      If jobStatus <> 0 Then Wscript.Sleep 20
    Loop While jobStatus = 0
     
    WScript.Echo "Status: "& job.Status
    WScript.Echo "Exit code: "& job.ExitCode
     
    Set job = Nothing
    Set WshShell = Nothing
    produit l'affichage suivant :
    C:\Documents and Settings\g>Test.vbs
    Microsoft (R) Windows Script Host Version 5.7
    Copyright (C) Microsoft Corporation 1996-2001. Tous droits réservés.

    Usage: java [-options] class [args...]
    (to execute a class)
    or java [-options] -jar jarfile [args...]
    (to execute a jar file)

    where options include:
    [Bla bla bla...]
    Status: 1
    Exit code: 0
    Alors que :
    C:\Documents and Settings\g>java
    Usage: java [-options] class [args...]
    (to execute a class)
    or java [-options] -jar jarfile [args...]
    (to execute a jar file)

    where options include:
    [Bla bla bla...]

    C:\Documents and Settings\g>echo %ERRORLEVEL%
    1
    Les codes retours ne correspondent pas !
    Savez-vous comment récupérer le code de sortie d'un programme ?

    Merci

    C:\Documents and Settings\g>ver

    Microsoft Windows XP [version 5.1.2600]

  2. #2
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 19
    Points : 12
    Points
    12
    Par défaut
    Évidemment, comme d'habitude, il suffit de poser la question sur un forum pour que la solution apparaisse.

    Mon script fonctionne à merveille mais c'est la recherche dans la variable PATH qui ne fonctionne pas de la même façon lorsqu'on exécute une commande par WScript.Exec et directement en invite de commandes.
    Ce n'étaient pas les mêmes versions des exécutables java.exe qui étaient appelés...

    Pour info, la récupération du code de sortie de programme fonctionne donc très bien tel qu'écrit ci-dessus.

    Merci à tous !

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

Discussions similaires

  1. Faire appel à un programme dans un script
    Par xxShawShankxx dans le forum Unix
    Réponses: 5
    Dernier message: 19/08/2011, 16h17
  2. appel programme dans un script cgi
    Par Jane Home dans le forum Web
    Réponses: 3
    Dernier message: 30/04/2010, 11h30
  3. Exécuter commande SSH dans un script PHP.
    Par Greg05000 dans le forum Linux
    Réponses: 0
    Dernier message: 14/04/2010, 00h19
  4. Exécuter un programme dans un terminal !
    Par mac88 dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 16/09/2008, 11h37
  5. Réponses: 2
    Dernier message: 17/03/2007, 14h11

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