Problème script .vbs

Résolu
DamDC91 Messages postés 13 Statut Membre -  
DamDC91 Messages postés 13 Statut Membre -
Bonjour,
Quelqu'un peurrait me dire pourquoi ce script ne fonctionne pas merci d'avance

Dim oShell
dim i 
Dim arrTouches1, arrTouches2, arrTouches3, arrTouches4, arrTouches5, arrTouches6, arrTouches7, arrTouches8, arrTouches9, arrTouches10, arrTouches11, arrTouches12, arrTouches13, arrTouches14, arrTouches15, arrTouches16, arrTouches17, arrTouches18, arrTouches19, arrTouches20, arrTouches21, arrTouches22, arrTouches23, arrTouches24, arrTouches25, arrTouches26, arrTouches27, arrTouches28, arrTouches29, arrTouches30, arrTouches31, arrTouches32, arrTouches33, arrTouches34, arrTouches35, arrTouches36, arrTouches37, arrTouches38, arrTouches39, bActivate, bExec
arrTouches1 = Array("s")
arrTouches3 = Array("a")
arrTouches4 = Array("l")
arrTouches5 = Array("u")
arrTouches6 = Array("t")
arrTouches7 = Array(" ")

arrTouches8 = Array("j")
arrTouches9 = Array("'")
arrTouches10 = Array("a")
arrTouches11 = Array("i")
arrTouches12 = Array(" ")

arrTouches13 = Array("p")
arrTouches14 = Array("r")
arrTouches15 = Array("i")
arrTouches16 = Array("s")
arrTouches17 = Array(" ")

arrTouches18 = Array("l")
arrTouches19 = Array("e")
arrTouches20 = Array(" ")

arrTouches21 = Array("c")
arrTouches22 = Array("o")
arrTouches23 = Array("n")
arrTouches24 = Array("t")
arrTouches25 = Array("r")
arrTouches26 = Array("o")
arrTouches27 = Array("l")
arrTouches28 = Array("e")
arrTouches29 = Array(" ")

arrTouches30 = Array("d")
arrTouches31 = Array("e")
arrTouches32 = Array(" ")

arrTouches33 = Array("t")
arrTouches34 = Array("o")
arrTouches35 = Array("n")
arrTouches36 = Array(" ")

arrTouches37 = Array("P")
arrTouches38 = Array("C")

Set oShell = CreateObject("WScript.Shell")
bExec = oShell.Run("notepad.exe")
WScript.Sleep 2000
bActivate = oShell.AppActivate("Notepad")
For i=0 To UBound(arrTouches1, arrTouches2, arrTouches3, arrTouches4, arrTouches5, arrTouches6, arrTouches7, arrTouches8, arrTouches9, arrTouches10, arrTouches11, arrTouches12, arrTouches13, arrTouches14, arrTouches15, arrTouches16, arrTouches17, arrTouches18, arrTouches19, arrTouches20, arrTouches21, arrTouches22, arrTouches23, arrTouches24, arrTouches25, arrTouches26, arrTouches27, arrTouches28, arrTouches29, arrTouches30, arrTouches31, arrTouches32, arrTouches33, arrTouches34, arrTouches35, arrTouches36, arrTouches37, arrTouches38, arrTouches39)
 WScript.Sleep 100
 oShell.SendKeys arrTouches1, arrTouches2, arrTouches3, arrTouches4, arrTouches5, arrTouches6, arrTouches7, arrTouches8, arrTouches9, arrTouches10, arrTouches11, arrTouches12, arrTouches13, arrTouches14, arrTouches15, arrTouches16, arrTouches17, arrTouches18, arrTouches19, arrTouches20, arrTouches21, arrTouches22, arrTouches23, arrTouches24, arrTouches25, arrTouches26, arrTouches27, arrTouches28, arrTouches29, arrTouches30, arrTouches31, arrTouches32, arrTouches33, arrTouches34, arrTouches35, arrTouches36, arrTouches37, arrTouches38, arrTouches39(i)
Next
Set oShell = Nothing

2 réponses

  1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Bonjour,

    Je pense que ton souci vient de ton UBOUND....
    http://www.w3schools.com/vbscript/func_ubound.asp

    Cela vient aussi de ta logique.. pourquoi déclarer un tableau par Lettre... alors que tu pourrais faire UN TABLEAU pour TOUTES les lettres ??

    Dim arrTouches(37)
    arrTouches(0) = "s"
    arrTouches(1) = "a"
    arrTouches(2) = "l"
    arrTouches(3) = "u"
    arrTouches(4) = "t"
    ' etc...
    
    
    'la boucle deviendrait alors...
    For i=0 To UBound(arrTouches)
     WScript.Sleep 100
     oShell.SendKey arrTouches(i)
    Next
    


    0
    1. DamDC91 Messages postés 13 Statut Membre
       
      sa ne marche pas mais merci d'avoir réponde. Pourquoi faire un tableau lettre par lettre ?
      car je veut que sa donne l'effet que quelqu'un écrit. J'ai récupérer ce script sur internet et je l'ai un peu modifier donc je comprend pas trop. Merci de répondre.
      0
      1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830 > DamDC91 Messages postés 13 Statut Membre
         
        Le souci.. c'est que....
        sa ne marche pas
        ne nous permet pas de trouver l'erreur.....
        Lorsque tu as un message d'erreur (et c'etait forcément le cas avec mon code...) tu dois le lire et essayer de le comprendre pour le corriger.... et /ou au moins.. nous le donner !!!!

        Donc.. une fois le message d'erreur lu... tu t'aperçois que j'ai écrit : Sendkey .. au lieu de Sendkeys ....

        Voici le code corrigé =>>
        Dim oShell
        dim i 
        Dim arrTouches(5)
        arrTouches(0) = "s"
        arrTouches(1) = "a"
        arrTouches(2) = "l"
        arrTouches(3) = "u"
        arrTouches(4) = "t"
        ' etc...
        
        
        
        Set oShell = CreateObject("WScript.Shell")
        bExec = oShell.Run("notepad.exe")
        WScript.Sleep 2000
        bActivate = oShell.AppActivate("Notepad")
        'la boucle deviendrait alors...
        For i=0 To UBound(arrTouches)
         WScript.Sleep 200
         oShell.SendKeys arrTouches(i)
        Next
        Set oShell = Nothing
        


        NB: Pour ajouter des lettres supplémentaires...n'oublies pas qu'il faut ausi que tu modifies aussi la variable (5) qui se trouve dans le dim du arrTouches...
        0
  2. DamDC91 Messages postés 13 Statut Membre
     
    merci d'avoir répondu mais sa ne marche toujours pas, le message d'erreur est type incompatible sendkeys.
    0
    1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       
      Tu as copié collé exactement mon code ?
      Tu es sur quel OS ?
      le notepad s' ouvre ?
      0
    2. DamDC > jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention  
       
      J'ai bien copier collé en complétant avec le début de mon script
      Le notepad s'ouvre
      Je ne sais pas c'est quoi un OS
      0
    3. DamDC91 > jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention  
       
      J'ai bien copier collé en complétant avec le début de mon script
      Le notepad s'ouvre
      Je ne sais pas c'est quoi un OS
      0
    4. DamDC91 Messages postés 13 Statut Membre > jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention  
       
      Le notepad s'ouvre
      J'ai bien copié/collé le script en le complétant avec le début du mien
      Je ne sais pas se que c'est qu'un OS
      Dsl
      0
    5. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       
      Os: système d'exploitation .... autrement dit. .. windos... (quelle version as tu ?)

      Avant de coller le reste de TON script. .. testes le mien tel quel et confirme nous qu'il fonctionne. ..
      0