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 :

lancer différents programmes en fonction des noms


Sujet :

VBScript

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Par défaut lancer différents programmes en fonction des noms
    Bonjour a tous,
    je fait une rapide présentation de moi et de mon problème :
    je suis nouveau sur ce forum, j'adore bidouiller des petits trucs sur mon PC (je suis pas un crack ).
    J'ai donc commencer a écrire des tout petits script en "VisualBasic" sur mon PC, voilà le début du problème.
    Je suppose que vous allez trouvez sa simple, et je l'espère, m'aiderez a me spécialisé dans ce domaine.

    Je voulais créer un script qui me permettait de lancer différents programmes en fonction des noms que j'entrai dans l' "inputBox" (je sais pas si c'est le bon nom). Mon script marche nickel pour le premier liens, mais pour le 2ème, une erreur apparait : Ligne : 8
    Caract. : 26
    Erreur : Le fichier spécifier est introuvable
    Code : 80070002
    Source : (null)
    Je suis pourtant sur d'avoir le bon chemin ...
    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
    18
    19
    nom=inputBox("Tapez le code","Lancher")
    If nom="Toto1"  Then 
                             set variable=CreateObject("WScript.Shell")
                             variable.Run("D:\Documents\Toto1.exe")
                        Else
                  	            If nom="Toto2"  Then 
                             set variable=CreateObject("WScript.Shell")
                             variable.Run("D:\Documents\Toto2.exe")
                        Else
                  	         Msgbox "Commande non reconnue"
                    End If
                                 If nom="Toto3"  Then 
                             set variable=CreateObject("WScript.Shell")
                             variable.Run("D:\Documents\Toto3.exe")
                        Else
                  	         Msgbox "Commande non reconnue"
                    End If
     
                  End If
    Voili-voilou Merci de votre aide.

  2. #2
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 124
    Par défaut
    Bienvenue sur DVP
    Il existe une FAQ VBScript sur DVP

    Voici 3 codes différants pour un même fonctionnement.
    Avec des IFs
    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
    nom=inputBox("Tapez le code","Lancher")
    If nom="Toto1"  Then
      'set variable=CreateObject("WScript.Shell")
      'variable.Run("D:\Documents\Toto1.exe")
      Msgbox "lancement de Toto1"
      elseIf nom="Toto2"  Then
      'set variable=CreateObject("WScript.Shell")
      'variable.Run("D:\Documents\Toto2.exe")
      Msgbox "lancement de Toto2"
      elseif nom="Toto3"  Then
      'set variable=CreateObject("WScript.Shell")
      'variable.Run("D:\Documents\Toto3.exe")
      Msgbox "lancement de Toto3"
      else
      Msgbox "Commande non reconnue"
    end if
    Avec des Select Case
    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
    nom=inputBox("Tapez le code","Lancher")
    select case nom
      case "Toto1"
      'set variable=CreateObject("WScript.Shell")
      'variable.Run("D:\Documents\Toto1.exe")
      Msgbox "lancement de Toto1"
      case "Toto2"
      'set variable=CreateObject("WScript.Shell")
      'variable.Run("D:\Documents\Toto2.exe")
      Msgbox "lancement de Toto2"
      case "Toto3"
      'set variable=CreateObject("WScript.Shell")
      'variable.Run("D:\Documents\Toto3.exe")
      Msgbox "lancement de Toto3"
      case else
      Msgbox "Commande non reconnue"
    end select
    Avec des Select Case, un peu mieux construit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    nom=inputBox("Tapez le code","Lancher")
    select case nom
      case "Toto1", "Toto2", "Toto3"
       'set variable=CreateObject("WScript.Shell")
       'variable.Run("D:\Documents\" & nom & ".exe")
        nom = "lancement de " & nom  & " réussi"
      case else
        nom = "Commande non reconnue"
    end select
      Msgbox nom
    J'ai remé,
    'set variable=CreateObject("WScript.Shell")
    'variable.Run("D:\Documents\Toto1.exe")

    pour confirmer MES essais, n'oublis pas de supprimer ces ' pour TES essais.
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Par défaut
    Merci pour ta réponse, malheureusement, sa m'affiche toujours la même erreur ... Je suis pourtant sur que c'est le bon chemin ... cela pourait-il venir de mes fichiers ?

    PS : J'ai chercher dans le FAQ mais impossible de trouver une quelconque réponse.

  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
    heu si j'ai bien lu, le problème identifié par ProgElecT est lié à la syntaxe que tu utilises, pas au chemin :

    => pas bien

    => bien (ou select case qui est qd même mieux pour ton exemple)

    Est ce que tu peux reposter ton code ?

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Par défaut
    je ne comprend pas ce que tu veus que je fasse ... Mon code est déjà poser plus haut, par contre si tu veut le code d'erreur, je le fait completement :

    Windows Script Host
    Script : 'l'arboresence de mon script'
    Ligne : 12
    Caract. :4
    Erreur : Le fichier spécifier est introuvable.
    Code : 80070002
    Source : (null)

    Voici le rapport d'erreu quand j'ai le code :

    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
    nom=inputBox("Tapez le code","Lancher")
    If nom="Toto1"  Then
       set variable=CreateObject("WScript.Shell")
       variable.Run("D:\Documents\Toto1.exe")
      Msgbox "lancement de Toto1"
      elseIf nom="Toto2"  Then
       set variable=CreateObject("WScript.Shell")
       variable.Run("D:\Documents\Toto2.exe")
      Msgbox "lancement de Toto2"
      elseif nom="Toto3"  Then
       set variable=CreateObject("WScript.Shell")
       variable.Run("D:\Documents\Toto3.exe")
      Msgbox "lancement de Toto3"
      else
      Msgbox "Commande non reconnue"
    end if
    Et sa m'affiche se rapport tout le temps (avec des lignes et Caract. différents)

  6. #6
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 124
    Par défaut
    Citation Envoyé par mellamotuyo Voir le message
    Mon script marche nickel pour le premier liens, mais pour le 2ème, une erreur apparait])
    Citation Envoyé par mellamotuyo Voir le message
    Voici le rapport d'erreu quand j'ai le code :
    ..........
    Et sa m'affiche se rapport tout le temps (avec des lignes et Caract. différents)
    Fais un essais avec ce
    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
    18
    19
    20
    nom=inputBox("Tapez le code","Lancher")
    ouvrir
     
    sub ouvrir()
     
    select case nom
      case "fin"
       exit sub
      case "Toto1", "Toto2", "Toto3"
       set variable=CreateObject("WScript.Shell")
       'variable.Run("D:\Documents\" & nom & ".exe")
       variable.Run("notepad.exe")
        nom = "lancement de " & nom  & " réussi"
      case else
        nom = "Commande non reconnue"
    end select
      Msgbox nom
    nom=inputBox("Tapez le code","Lancher")
    ouvrir
    end sub
    Avec ce code, reponds au moins 2 à 3 fois Toto1, Toto2 ... avant de repondre fin pour pouvoir terminer le script.
    Essais aussi de lancer la ligne de commande avec Démarer ==> Executer en y mettant exactement le chemin et le nom de l'exe que tu veux lancer avec ton script.
    De toutes façons, le message d'erreur est explicite, la seule chose qui peut contrarier et eventuellement declancher ce message d'erreur, serait peut être que le dossier et/ou le .exe necessite une session administrateur, sous quel OS es tu ?
    Sous VISTA il devient compliqué de lancer des programmes, qui ne posait pas de problèmes sous XP, 2000 ....
    Pour autant, je ne suis pas specialiste de VBScript, mon domaine étant plutôt VB6 et maintenant un peu de VB2008 Express(en cour d'apprentissage, dur dur )
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  7. #7
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Par défaut
    Je suis sous Windows XP, j'ai essayer avec "Executer" et sa marche mais pour ce :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set variable=CreateObject("WScript.Shell")
       variable.Run("D:\Documents\Toto3.exe")
    Sa ne marche pas ...

    PS : quel logiciel faut-il utiliser pour avoir ce type d'interface :

  8. #8
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 124
    Par défaut
    VB6.
    Le code que tu nous signales, tu utilises quel editeur, par exemple moi j'utilise vbs Factory.
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  9. #9
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Par défaut
    Je n'utilise que le bloc-note ....

  10. #10
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Citation Envoyé par mellamotuyo Voir le message
    Je n'utilise que le bloc-note ....
    Un peu de "HTA" :

    http://bbil.developpez.com/tutoriel/vbs/interface-hta/

  11. #11
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Par défaut
    Merci pour ce lien ... je sens que je vais avoir pas mal de boulot pour apprendre tout sa ....
    Merci a vous pour vos réponse mais je pense que le problème viens de mes dossiers ... je vais donc abandonner ce projet (ou essayer de trouver une solution pour contourner ce "petit problème).
    Merci encore !

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/06/2012, 09h58
  2. utilisation api shell pour lancer un programme en passant des paramètres
    Par criche dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 19/05/2012, 09h37
  3. enregistrer en fonction des noms de colonnes
    Par jeff6868 dans le forum R
    Réponses: 2
    Dernier message: 26/04/2012, 17h28
  4. Réponses: 4
    Dernier message: 24/11/2005, 19h51

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