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

VB 6 et antérieur Discussion :

Une autre méthode que myShell.exec("monProgramme")pour récupérer la sortie standard ?


Sujet :

VB 6 et antérieur

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 23
    Points : 23
    Points
    23
    Par défaut Une autre méthode que myShell.exec("monProgramme")pour récupérer la sortie standard ?
    Bonjour,

    J'ai besoin de récpérer des donées émises par un programme sur la sortie standard :
    par exemple j'execute en console monProg.exe param1 param2 ... et je souhaite récupérer la sortie standard.

    actuellement je travaille comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    Set oExec = objShell.Exec(toExec & "getpars.exe " & detPath & " /PLIVE")
    outBuff = oExec.stdOut.ReadAll()
    ce code fonctionne puisque je me retrouve avec ce que je veut dans outBuff.

    mais j'aimerais savoir si il est possible d'utiliser quelque chose ressemblant a ce qui existe en dotNet ou en c# a savoir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ProcessStartInfo.redirectStandardOutput
    Le code .Exec ouvre un shell et une fenetre, ce que j'aimerais c'est que la commande s'execute sans ouvrir de nouvelle fenetre mais en utilisant autre chose. Parcequ'au bout d'un moment il y a trop de fenetres partout. J'ai cette commande a executer environ 40fois... En plus ca prend un temps fou de charger cmd.exe a chaque fois.

    Une autre méthode consisterais a executer le programme et rediriger sa sortie standrard vers un fichier que l'on lit par la suite :

    du stye maCommande.exe > data.txt
    et ensuite ouvrir data.txt pour le lire. De cette facon en utilisant un .run("maCommande.exe > data.txt",0,True) ca pourrait peut etre marcher
    mais je trouve ce code tres peu propore, se servir d'un fichier texte comme "variable" c dégeu

    vous avez des idées ? en vb6

    merci d'avance
    diffy

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 23
    Points : 23
    Points
    23
    Par défaut C bon
    Rebonjour a tous

    Finalement ce probleme ne se pose plus.
    Au lieu d'utiliser des commandes bash j'ai trouvé des librairies de programmations spécifiques a mon matériel. Plus besoin de bash yooupi

    Si qqun a des solutions a ce problème n'hésitez pas a les déposer pour les autres mais je marque le probème comme résolu.

    Merci
    Diffy

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

Discussions similaires

  1. Réponses: 13
    Dernier message: 17/11/2009, 15h00
  2. Injection avec une autre méthode que le setter.
    Par Tiaps dans le forum Spring
    Réponses: 2
    Dernier message: 22/05/2007, 23h37

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