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

Discussion: Bug sur script VBS

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    décembre 2018
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Transports

    Informations forums :
    Inscription : décembre 2018
    Messages : 79
    Points : 26
    Points
    26

    Par défaut Bug sur script VBS

    Bonjour,
    j'ai créé un script qui lance un batch
    et lorsque je modifie le chemin d'accès cela ne fonctionne plus

    ex 1 qui fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Option Explicit
     
    Dim WSHShell, Commande
     
    Set WSHShell = CreateObject("WScript.Shell")
    Commande = "C:\Users\xxxxxxxx\Desktop\ping.bat"
    Do While true
    	WSHShell.Run Commande
    	Wscript.sleep 30000
    loop
    ex 2 qui bug
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Option Explicit
     
    Dim WSHShell, Commande
     
    Set WSHShell = CreateObject("WScript.Shell")
    Commande = "R:\06 - INFORMATIQUE\G - PROJETS\Ping\ping.bat"
    Do While true
    	WSHShell.Run Commande
    	Wscript.sleep 30000
    loop
    Mise à part le fait que d'un coté je sois en local de l'autre via un lecteur réseau...
    j'ai ce message...
    Nom : Capture.PNG
Affichages : 49
Taille : 8,7 Ko

    est ce que en mode réseau cela ne fonctionne pas mon script ?

    Merci d'avance

  2. #2
    Rédacteur/Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    décembre 2004
    Messages
    4 831
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Haute Savoie (Rhône Alpes)

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

    Informations forums :
    Inscription : décembre 2004
    Messages : 4 831
    Points : 10 841
    Points
    10 841

    Par défaut

    Salut

    Essais une de ces 2 syntaxes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Commande = chr(34) + "R:\06 - INFORMATIQUE\G - PROJETS\Ping\ping.bat" + chr(34)
    'ou bien
    Commande = """R:\06 - INFORMATIQUE\G - PROJETS\Ping\ping.bat"""
    ProgElecT
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.

  3. #3
    Membre régulier
    Homme Profil pro
    Tech maintenance Info
    Inscrit en
    août 2009
    Messages
    187
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Tech maintenance Info
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : août 2009
    Messages : 187
    Points : 89
    Points
    89

    Par défaut

    Salut,

    Ton problème me fait penser à un blocage de l'UAC (User account control)...

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    décembre 2018
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Transports

    Informations forums :
    Inscription : décembre 2018
    Messages : 79
    Points : 26
    Points
    26

    Par défaut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Commande = chr(34) + "R:\06 - INFORMATIQUE\G - PROJETS\Ping\ping.bat" + chr(34)
    cela fonctionne
    MERCI

    maintenant le soucis est que dans mon script j'ai mis une boucle
    et que à chaque fois qu'il lance le Batch cela me demande d'appuyer sur oui.... pour lancer le batch...

  5. #5
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    juillet 2009
    Messages
    2 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : juillet 2009
    Messages : 2 207
    Points : 5 174
    Points
    5 174

    Par défaut

    Citation Envoyé par aculy Voir le message
    maintenant le soucis est que dans mon script j'ai mis une boucle
    et que à chaque fois qu'il lance le Batch cela me demande d'appuyer sur oui.... pour lancer le batch...
    Montre la partie du code correspondant à la question
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA)
    Vous pouvez consulter mes contributions
    Consultez les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    décembre 2018
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Transports

    Informations forums :
    Inscription : décembre 2018
    Messages : 79
    Points : 26
    Points
    26

    Par défaut

    mon code n'a pas changé

    pour la partie VBS j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Option Explicit
     
    Dim WSHShell, Commande
     
    Set WSHShell = CreateObject("WScript.Shell")
     
    Commande = chr(34) + "R:\06 - INFORMATIQUE\G - PROJETS\Ping\ping.bat" + chr(34)
     
    Do While true
    	WSHShell.Run Commande
    	Wscript.sleep 30000
    loop
    ' Set WSHShell = Nothing
    et pour le batch
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
      @echo off
    echo ---------------------------------------------- >> "R:\06 - INFORMATIQUE\G - PROJETS\Ping\IP_test.csv"
    echo. >> "R:\06 - INFORMATIQUE\G - PROJETS\Ping\IP_test.csv"
    echo %date% >> "R:\06 - INFORMATIQUE\G - PROJETS\Ping\IP_test.csv"
    echo %time% >> "R:\06 - INFORMATIQUE\G - PROJETS\Ping\IP_test.csv"
    ping.exe 10.33.243.160 -n 1 >> "R:\06 - INFORMATIQUE\G - PROJETS\Ping\IP_test.csv"
    environnement win 7 PRO

  7. #7
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    juillet 2009
    Messages
    2 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : juillet 2009
    Messages : 2 207
    Points : 5 174
    Points
    5 174

    Par défaut

    Dans le code, je ne vois pas où le mot "oui" peut être affiché.
    Cela suppose qu'il y a un bouton "Oui" sur lequel on peut appuyer avec la souris !

    Peut-être que tu veux dire qu'il te demande : "Appuyez sur une touche pour continuer" ?
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA)
    Vous pouvez consulter mes contributions
    Consultez les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    décembre 2018
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Transports

    Informations forums :
    Inscription : décembre 2018
    Messages : 79
    Points : 26
    Points
    26

    Par défaut

    Nom : Capture.PNG
Affichages : 17
Taille : 13,4 Ko
    pardon j'ai pas mis le screenshot....
    je lance mon script et j'ai ce message quand il doit lancer le Batch

  9. #9
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    juillet 2009
    Messages
    2 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : juillet 2009
    Messages : 2 207
    Points : 5 174
    Points
    5 174

    Par défaut

    Essaie de désactiver(temporairement) les alertes de sécurité et lance le script pour voir le résultat.
    Regarde ICI pour WIN 7 et LA pour Win 10
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA)
    Vous pouvez consulter mes contributions
    Consultez les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  10. #10
    Nouveau membre du Club
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    décembre 2018
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Transports

    Informations forums :
    Inscription : décembre 2018
    Messages : 79
    Points : 26
    Points
    26

    Par défaut

    le soucis c'est un PC entreprise...
    vu que c'est pour le boulot mon script
    et que je n'ai pas la main sur mes paramètres de sécurités.....

  11. #11
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    juillet 2009
    Messages
    2 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : juillet 2009
    Messages : 2 207
    Points : 5 174
    Points
    5 174

    Par défaut

    D'après la capture écran, je vois que le bouton Annuler est sélectionné par défaut.
    Lance le script tel qu'il est et vérifie cette remarque.

    Appuie une fois sur la touche Tab ensuite regarde le contrôle qui a le focus, est-ce le bouton Exécuter ?

    Répète l'opération le nombre de fois nécessaires pour amener le focus sur Exécuter.
    Quel est le nombre d'appuis sur Tab ?
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA)
    Vous pouvez consulter mes contributions
    Consultez les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  12. #12
    Membre averti
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    novembre 2011
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : novembre 2011
    Messages : 163
    Points : 302
    Points
    302

    Par défaut

    Bonjour,

    Sinon, à quoi sert ton script ? Et pourquoi une partie en vbs et l'autre en batch ?
    Est-ce que quelquechose comme cela te conviendrait ?

    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
    21
    Const ForReading = 1, ForWriting = 8
    Dim oFso
    Dim Fichiercsv, Message, Date_Heure, Adresse
    Set oFso = CreateObject("Scripting.FileSystemObject")
     
    Adresse = "10.33.243.160"
    Fichiercsv = "R:\06 - INFORMATIQUE\G - PROJETS\Ping\IP_test.csv"
     
    If oFso.FileExists(Fichiercsv) = False then oFso.CreateTextFile(Fichiercsv)
     
    Message = now
    Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}!\\").ExecQuery("select * from Win32_PingStatus where address = '" & Adresse & "'")
    For Each objStatus in objPing
    If objStatus.Statuscode = 0 Then
    Message = Message & ";Ping  " & adresse & ";succes;Temps de réponse: " & objStatus.ResponseTime & "ms" & vbcrlf
    Else
    Message = Message & ";Ping  " & adresse & ";echec" & vbcrlf
    End if
    Next
     
    Set myfile = oFso.OpenTextFile(Fichiercsv, ForWriting) : myfile.Write(Message) : myfile.Close
    ++

  13. #13
    Nouveau membre du Club
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    décembre 2018
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Transports

    Informations forums :
    Inscription : décembre 2018
    Messages : 79
    Points : 26
    Points
    26

    Par défaut

    Citation Envoyé par l_autodidacte Voir le message
    Quel est le nombre d'appuis sur Tab ?
    j'ai 2 tab
    pour être sur le Executer

  14. #14
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    juillet 2009
    Messages
    2 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : juillet 2009
    Messages : 2 207
    Points : 5 174
    Points
    5 174

    Par défaut

    A ta place, j'opterais pour la solution donnée par Cachlab (Salut) plus simple et propre. Tu peux y ajouter d'autres données si tu veux
    Sinon, essaie d'utiliser la méthode SendKeys en espérant que le système l'accepte, car parfois il y a erreur.
    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
    Option Explicit 
    Dim WSHShell, Commande
     
    Set WSHShell = CreateObject("WScript.Shell")
     
    Commande = chr(34) + "R:\06 - INFORMATIQUE\G - PROJETS\Ping\ping.bat" + chr(34)
     
    Do While true
        WSHShell.Run Commande
        Wscript.Sleep 1000
        WSHShell.SendKeys "{TAB}" 
        WSHShell.SendKeys "{TAB}"
        Wscript.Sleep 500
        WSHShell.SendKeys "{ENTER}"
        Wscript.sleep 30000
    loop
    Si la boîte de message apparaît tardivement, essaie d'augmenter la valeur d'attente( pour Sleep)
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA)
    Vous pouvez consulter mes contributions
    Consultez les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

Discussions similaires

  1. [debutant bug sur script
    Par jmc41320 dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 04/03/2018, 20h36
  2. Select qui ne fonctionne pas sur script VBS
    Par jamy69 dans le forum VBScript
    Réponses: 4
    Dernier message: 24/05/2012, 21h07
  3. script vbs sur le centre de sécurité
    Par samarchpa dans le forum Windows
    Réponses: 2
    Dernier message: 27/04/2006, 22h03
  4. [VBS]Bug sur les boucles for.
    Par méphistopheles dans le forum VBScript
    Réponses: 7
    Dernier message: 24/03/2006, 22h17

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