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

Windows Discussion :

(Batch et VBS) Petit probléme avec un script batch VBS


Sujet :

Windows

  1. #1
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut (Batch et VBS) Petit probléme avec un script batch VBS
    Bonjour, j'ai un petit souci avec un script batch et vbs, voila s'est un fichier batch qui créer un vbs pour ouvrir une boiite de dialogue pour sélectionné un fichier sur le disque dur, voici le script batch en question:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    echo Set oUA = CreateObject("UserAccounts.CommonDialog") > SelectFichier.vbs 
    echo x = oUA.ShowOpen >> SelectFichier.vbs 
    echo wscript.echo x >> SelectFichier.vbs 
    echo st = oUA.FileName >> SelectFichier.vbs 
    echo stExt = Right(st,3) >> SelectFichier.vbs 
    echo i = InStrRev (st,"\") >> SelectFichier.vbs 
    echo stNom = Mid(st,i+1) >> SelectFichier.vbs 
    echo stNomSansExt = Left(stnom,Len(stnom)-4) >> SelectFichier.vbs 
    echo Wscript.echo "Set MonBatchName=" ^& oUA.FileName >> SelectFichier.vbs 
    cscript SelectFichier.vbs > var.bat & call var.bat 
    echo  %MonBatchName%
    pause>nul
    Donc mopn souci s'est ici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cscript SelectFichier.vbs > var.bat &
    Donc le VBS créer un autre batch var.bat pour y inséré la variable du chemin du fichier sélectioné, mais avant la variable il écrit ceci dans var.bat:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Microsoft (R) Windows Script Host Version 5.6
    Copyright (C) Microsoft Corporation 1996-2001. Tous droits r‚serv‚s.
    Quelqu'un saurait-il comment annuler l'écriture de ses deux lignes ?

  2. #2
    SLE
    SLE est déconnecté
    Membre éclairé Avatar de SLE
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 604
    Points : 799
    Points
    799
    Par défaut
    essaie de taper cscript /? et regarde les commutateurs dispo...

    Peut-être avec /B ?

    @+

  3. #3
    SLE
    SLE est déconnecté
    Membre éclairé Avatar de SLE
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 604
    Points : 799
    Points
    799
    Par défaut
    Bon ça va pas avec /B... Mais essaie avec wscript au lieu de cscript, il n'y a pas de message avec celui-là...

    @+

  4. #4
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    Bonjour SLE et merci

    Voila l'aide:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     //B            Mode batch : Supprime l'affichage des invites et des erreurs de scripts
    Mais quand j'ajoute /B ou //B le script ne s'éxécute même plus.

  5. #5
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    Avec wscript les duex lignes sont aussi inscritent, mais pas la variable dans var.bat.

  6. #6
    SLE
    SLE est déconnecté
    Membre éclairé Avatar de SLE
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 604
    Points : 799
    Points
    799
    Par défaut
    Ben alors tu vas devoir rediriger la sortie de ton script vers un fichier temporaire, puis parcourir ce fichier de nouveau avec une boucle for et faire sauter les 2 premières lignes avec "skip=x"... Regarde dans l'aide de la commande for, ça doit être expliqué...

    @+

  7. #7
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    Voici donc la boucle for:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For /F "skip=4 delims= " %%a In (var.bat) Do echo %%a >  var1.bat
    Le fichier var1.bat n'est même pas créer, voyer vous se qui ne va pas ?

  8. #8
    SLE
    SLE est déconnecté
    Membre éclairé Avatar de SLE
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 604
    Points : 799
    Points
    799
    Par défaut
    C'est normal, avec > tu écrases ton fichier à chaque itération de ta boucle...

    Comme ceci, ça fonctionne...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    @echo off
    del var1.bat /Q
    For /F "skip=4 delims=" %%a In (var.bat) Do call :traitement %%a
    goto :eof
    
    :traitement
    if not exist var1.bat (echo %* >var1.bat) else echo %* >>var1.bat
    goto :eof
    @+

  9. #9
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    Merci encore

    Donc j'ai modifier comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For /F "skip=4 delims= " %%a In (var.bat) Do echo %%a >> var1.bat
    Mais s'est toujours pareille.

    Le code que vous m'avez donné contien trop de ligne, s'est pour l'implater dans un bstch déjà assez gros je ne voudrai pas ajouter trop de lignes.

  10. #10
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    S'est pas grave, le //B ne fonctionner pas mais //Nologo lui fonctionne bien, encore merci pour votre patience

  11. #11
    SLE
    SLE est déconnecté
    Membre éclairé Avatar de SLE
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 604
    Points : 799
    Points
    799
    Par défaut
    Regarde mon code de plus près... Il ne faut pas d'espace dans @+

  12. #12
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    Merci encore oui s'est mieux sans l'espace.

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

Discussions similaires

  1. [Batch] probléme avec un script
    Par traksmen dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 30/12/2009, 09h11
  2. Problème avec mon script VBS
    Par passager123 dans le forum VBScript
    Réponses: 1
    Dernier message: 18/08/2009, 12h18
  3. [RegEx] Petit problème avec un script
    Par mathias59 dans le forum Langage
    Réponses: 2
    Dernier message: 28/12/2007, 23h00
  4. [MySQL] Divers petits problèmes avec mon script
    Par fourniey dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 26/12/2007, 16h20
  5. batch - Petit probléme avec !
    Par koKoTis dans le forum Windows
    Réponses: 3
    Dernier message: 02/01/2007, 09h06

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