Bien qu'ayant compulsé ce très bon forum dans moult sens , je n'ai pas trouvé la solution à mon problème qui pourrait bien être d'une simplicité étonnante, mais je sèche toujours:
En fait, j'éssaie de faire un script de time out pour une connexion VPN via ligne RTC et le but de mon script est qu'après une durée donnée, le script propose à l'utilisateur de déconnecter ou de rester connecté (c'est la condition, la boucle étant le temps de connexion).
Mon problème est que selon la syntaxe que j'emploie, lorsque l'utilisateur répond "yes" à la question "transmission terminée" ou qu'il ne répond pas durant 20 secondes, la connexion doit être coupée via l'executable "hangras.exe", le client VPN fermé et le script arrêté. Lorsqu'il clique sur "no", forcément, la boucle doit repartir pour la durée donnée et reposer cette question au bout du temps imparti.
Voici donc le bout du script qui fait défaut car dans le cas présent, lorsque je clique sur "yes" tout fonctionne correctement, mais si je clique sur "no" ou sur rien, la connexion est aussi arrêtée, le client fermé et le script se met en pause infinie...
Code : Tout sélectionner
...
$sortie = False
While $sortie = False
Sleep (60000) ; durée modifiable avant déconnexion
$choix = MsgBox(4, "Déconnexion en cours", "Transmission Terminée ?", 20)
If $choix = 6 and $choix <> 7 Then $sortie = True
Run('"C:\HANGRAS.exe"')
WinWait("VPN Client","messageBoxText")
If Not WinActive("VPN Client","messageBoxText") Then WinActivate("VPN Client","messageBoxText")
WinWaitActive("VPN Client","messageBoxText")
Send("{ENTER}")
WinClose("status: Disconnected | VPN Client - Version 4.8.01.0300")
MsgBox(64, "Déconnexion réussie", "Vous avez été déconnecté du réseau", 5)
WEnd
Exit
Mille mercis d'avances
Théo