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 :

obtenir d'un programme C# un argument en Vbs


Sujet :

VBScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 39
    Par défaut obtenir d'un programme C# un argument en Vbs
    Bonjour à tous,
    Après avoir posé mes questions concernant le lancement d'un .exe dans un fichier scirpt. Tout fonctionne encore merci à tous ceux qui m'ont aidé. Je réussis aussi à mettre en paramètre les données utilepour mon code en C#. Mais comme l'intitulé du message le précise j'ai un petit problème ^^.
    En fait j'essaie depuis ce week end de faire en sorte d'accéder à une valeur calculer sous C# par mon code en Vbs et j'ai du mal. Je suis trop débutant en script pour savoir comment m'y prendre.
    Y a t il un ame charitable qui pourrait me dire comment je dois m'y prendre ?
    Merci

  2. #2
    Membre expérimenté
    Inscrit en
    Mai 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 189
    Par défaut
    perso je n'ai pas compris.


    si c'est une histoire d'arguments, la FAQ peut te donner une explication là dessus.


    Dans tous les cas, tu peux passer des argument de VBS vers C# et de C# vers VBS, donc tu devrais retrouver l'information que tu cherches.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 39
    Par défaut
    En fait je souhaite envoyer le résultat d'un calcul dans le même fichier script qui l'a lancé... J'ai cherché ça dans la FAQ VBscript mais je ne l'ai pas retrouvé c'est pour cela que je pose la question. Je ne sais pas si cette fois j'ai été assez clair ... Merci ^^

  4. #4
    Membre expérimenté
    Inscrit en
    Mai 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 189
    Par défaut
    oui, c'est plus clair.

    Si j'étais dans ton cas, soit je ferais 2 scripts C# (un qui calcule, qui lance le VBS, et l'autre qui est lancé du VBS); soit je stockerais la valeur a transférer dans un fichier texte, ou dans la base de registre, pour que le script la récupère.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 39
    Par défaut
    'lut,
    N'est il pas possible de pouvoir renvoyer cette valuer dans le même fichier script selon toi? Parceque là je travaille sur une machine qui ne peut utiliser qu'un seul fichier script. De plus, je lance le fichier script qui lance un .exe de calcul et qui doit renvoyé dans le fichier script le fameux résultat dont j'ai besoin. Donc si ce n'est pas trop possible je serai bloqué pour la suite....
    Merci

  6. #6
    Membre expérimenté
    Inscrit en
    Mai 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 189
    Par défaut
    Je ne l'ai jamais fait.

    Je ne vois pas comment tranférer une information à un script déjà lancé, sans la stocker.

    Regarde si en travaillant sur les code erreur, tu peux générer une erreur d'éxecution, qui serait interpretée à la sortie du VBS... c'est pas super propre, et c'est probablement pas simple (si seulement c'est réalisable...).

  7. #7
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    En fait le problème est un problème d'intercommunication entres les différentes applications.

    Passer des arguments en ligne de commande pour paraméter le programme que l'on veut lancer est en général facile.
    Mais récupérer le résultat d'un cacul fait par le programme au niveau du script est plus difficille car il est nécessaire de le stocker même temporairement : fichier texte, clé en base de registre, variable d'environnement, ...

    Il existe néanmoins un type de retour qui est récupérable sans passer par du stockage, c'est le retour de code d'erreur.

    Comment exécuter un programme externe ? [haut]

    auteur : bbil
    La méthode Run de l'objet WshShell permet cela :

    Exécution "bloquante" de la calculatrice Windows.

    VBS

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set WshShell = WScript.CreateObject("WScript.Shell")
    Return = WshShell.Run("calc" , 1, true) 
    MsgBox "Fin utilisation calculatrice"

    Paramètres de WshShell.Run strCommand,intWindowStyle,bWaitOnReturn
    - strCommand : Chaîne de caractère, ligne de commande à exécuter
    - intWindowStyle : 1 : Active la fenêtre dans sa taille et position d'origine
    - bWaitOnReturn : à True attends la fin de l'exécution du programme avant d'effectuer la suite..
    Si tu fixes bwaitonreturn à true, Run attends la fin d'éxecution du programme avant de redonner la main au script et par la même occasion affectes la variable Return avec un code retour remonté par le programme exécuter par run.


    Bref tu n'as pas trop le choix, ou tu gères ton problème avec le code retour du programme ou tu stockes temporairement la valeur du calcul dans un endroit accessible par le programme et le script.

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 39
    Par défaut
    ok du coup je vias me pencher sur la premiere solution. Cela me parait moins compliqué et faisable pour quelqu'un de mon niveau . En tout cas merci à vous deux pour vos réponses je mets ce sujet en résolu car vous m'avez bien aidé quant à ce que je dois faire pour n'utiliser qu'un seul script.
    Encore merci ^^

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

Discussions similaires

  1. [Débutant] programme qui appel des scripts VBS
    Par Maxmoon13 dans le forum C#
    Réponses: 1
    Dernier message: 23/07/2013, 10h46
  2. Lancer un programme avec des arguments via IE...
    Par petozak dans le forum Général Conception Web
    Réponses: 6
    Dernier message: 24/03/2006, 11h51
  3. [Debutant ] Test des arguments du programme
    Par peaceinpal dans le forum C
    Réponses: 2
    Dernier message: 09/10/2005, 13h20
  4. [Apis]parser les arguments d'un programme Java
    Par sacofan dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 06/08/2005, 14h32
  5. argument programme --> **argv
    Par kij dans le forum C
    Réponses: 6
    Dernier message: 18/04/2005, 15h41

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