[VBS] Mettre un programme au 1er plan pour interagir dedans
Bonsoir,
J'ai un programme "pro" où je suis obligé d'utiliser le fonction sendkeys pour interagir avec et récupérer l'info qui m'intéresse.
Sauf que de temps en temps, l'envoi des commandes via sendkeys ouvre le menu Windows donc le résultat n'est pas celui attendu.
Voici un exemple de code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| Dim objShell,oExec
Set objShell = wscript.createobject("wscript.shell")
Set oExec = objShell.Exec("calc.exe")
Do While oExec.Status = 0
WScript.Sleep 200
Loop
WScript.Sleep 100
objShell.sendkeys "%H"
WScript.Sleep 100
objShell.sendkeys "{DOWN}"
WScript.Sleep 100
objShell.sendkeys "{DOWN}"
WScript.Sleep 100
objShell.sendkeys "{ENTER}"
WScript.Sleep 100 |
En l'exécutant au lancement de Windows, j'arrive à reproduire le problème.
Et malheureusement, je n'arrive pas à trouver la méthode pour mettre une fenêtre au 1er (et active) avant d'envoi les commandes !
D'avance merci