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 un Batch en fenêtre reduite ds la barre des tâches (problème de code)


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif Avatar de arnofly
    Homme Profil pro
    Développeur Web / Webdesigner
    Inscrit en
    Mai 2007
    Messages
    413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web / Webdesigner
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2007
    Messages : 413
    Par défaut Lancer un Batch en fenêtre reduite ds la barre des tâches (problème de code)
    Slt tout le monde,

    J'ai fais des recherches avec Google mais les exemples sont toujours pratiquement les mêmes et sans inclure la commande intWindowsStyle

    Code complet de mon fichier VBS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set WshShell = WScript.CreateObject("WScript.Shell")
    object.Run (strCommand, [intWindowStyle], [bWaitOnReturn]) 
    WshShell.Run ("C:\File.cmd", 0, True)
    Lorsque je lance mon fichier.vbs, Windows indique le message d'erreur suivant et le code ne fonctionne pas :
    --------------------------------------------------------------
    Ligne: 2
    Caract.: 60
    Erreur: L'appel d'une fonction Sub n'admet pas de parenthèse.
    --------------------------------------------------------------
    Si quelqun pouvais corriger, ça serait sympa car je n'y arrive pas, même apres plusieurs essaies.

  2. #2
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 275
    Par défaut
    La solution est dans le message d'erreur : Run est une fonction de type SUB. Son appel se fait donc comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WshShell.Run "C:\File.cmd", 0, True
    ou bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Call WshShell.Run ("C:\File.cmd", 0, True)
    Par contre, tu devrais supprimer la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    object.Run (strCommand, [intWindowStyle], [bWaitOnReturn])
    qui n'est que la définition de la signature de la méthode Run

  3. #3
    Membre très actif Avatar de arnofly
    Homme Profil pro
    Développeur Web / Webdesigner
    Inscrit en
    Mai 2007
    Messages
    413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web / Webdesigner
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2007
    Messages : 413
    Par défaut
    Excellent !

    J'allais te répondre que j'avais déjà essayé sans les parenthèses, justement suite au message d'erreur et que ça n'avais pas fonctionné mais j'a qd m fait un copié/collé de ta ligne de code ds mon vbs avant et là oh miracle ça marche !

    Par contre, qd je regarde ds les processus, mon fichier s'appelle "cmd.exe". En fait il n'a pas de titre. Comment lui en donner un stp ?

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 275
    Par défaut
    la commande Run permet d'exécuter une commande. Son traitement est identique à celui qui serait fait dans l'invite de commande windows "cmd.exe", en saisissant Voila pourquoi les espaces foutent le bordel s'il y en a dans le chemin d'accès à ton fichier, et voila pourquoi il apparait comme cmd.exe dans le gestionnaire des tâches.

    Pour ce qui est de son renommage, je n'ai pas de solution à te donner malheureusement...

  5. #5
    Membre très actif Avatar de arnofly
    Homme Profil pro
    Développeur Web / Webdesigner
    Inscrit en
    Mai 2007
    Messages
    413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web / Webdesigner
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2007
    Messages : 413
    Par défaut
    Tant pis c pas bien grave, j'ai plus important à gérer en ce moment. Merci qd m.

    Par contre, je n'ai pas d'espace ds le nom de mes fichiers. J'ai pris l'habitude avec MS-DOS qui est encore plus chiant puisqu'il faut se limiter à 8 caractères. A moins que "_" soit pris pour un espace.

    Cela dit, ce VBS execute un Batch qui dans son code (celui du Batch) execute un autre VBS contenant une extansion, donc un espace.

  6. #6
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 275
    Par défaut
    La commande run à le même comportement que si tu utilisais MS-DOS. Donc les caractères UNDERSCORE dans les chemins ne posent aucun problème.

    Par contre, je te conseille quand même de toujours rajouter Chr(34) en début et fin de chaine. Ca correspond au caractere guillemet et ca te protegera au cas où un espace apparait un jour dans un chemin d'accès à un exécutable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WshShell.Run Chr(34) & fichierAExecuter & Chr(34), 0, True

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/07/2011, 19h39
  2. Fenêtre cachée par la barre des tâches
    Par doons dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 23/10/2008, 09h59
  3. Colorer la fenêtre minimisée dans la barre de tâche ?
    Par VerrNum dans le forum Interfaces Graphiques en Java
    Réponses: 3
    Dernier message: 19/03/2007, 11h48
  4. Cacher une fenêtre de la barre des tâches
    Par rozwel dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 07/01/2007, 19h53
  5. Réponses: 2
    Dernier message: 25/08/2005, 05h44

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