Bonjour,
J'ai récupéré un code que je veux réutiliser. Il s'agit d'un appel à un formulaire HTML à partir d'un VBS avec récupération des informations saisies.
Voici le code de "test.vbs" :
Voici le code de "test.html" :
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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57 Dim shell, oIE Set shell = WScript.CreateObject("WScript.Shell") Do While true ' Ouverture d'Internet Explorer Set oIE = WScript.CreateObject("InternetExplorer.Application", "IE_") oIE.Left = 50 oIE.Top = 100 oIE.Height = 550 oIE.Width = 550 oIE.MenuBar = 0 oIE.ToolBar = 0 oIE.StatusBar = 0 oIE.navigate GetPath() & "test.html" oIE.Visible = 2 Do While (oIE.Busy) WScript.Sleep 200 Loop shell.AppActivate "Test de formulaire avec IE" ' Attente d'action sur le bouton ou fermeture de la fenêtre On Error Resume Next Do WScript.Sleep 100 Loop While (oIE.Document.Script.CheckVal() = 0) ' Si on ferme directement IE sans passer par un bouton, ' cela provoque une erreur qui est détectée et alors ' on quitte le script If Err <> 0 Then Wscript.Echo "On a fermé IE directement" Wscript.quit end if test=oIE.Document.Script.CheckVal() If test=-1 Then CloseIE Wscript.Echo "On a appuyé sur Annuler" Wscript.quit end if Wscript.Echo "On a appuyé sur le bouton " & test & VBCRLF & VBCRLF _ & "Texte : " & oIE.Document.TestForm.texte.value CloseIE loop '------------------------------------------------------------ ' Fonction de récupération du répertoire courant Function GetPath() Dim path path = WScript.ScriptFullName GetPath = Left(path, InStrRev(path, "\")) End Function '------------------------------------------------------------ ' Fermeture d'Internet Explorer Sub CloseIE oIE.Quit Set oIE = Nothing End Sub '------------------------------------------------------------
Or, lorsque je lance test.vbs, j'ai le message "On a fermé IE directement" qui apparaît et l'action sur les boutons n'ont plus aucun effet.
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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE>Test de formulaire avec IE</TITLE> </HEAD> <body> <script language="VBScript"> Dim ready, index ' Action sur les boutons Sub B0_OnClick ready=-1 End Sub Sub B1_OnClick ready=1 End Sub ' Initialisation Sub Window_OnLoad() ready=0 End Sub ' Fonction utilisable de l'extérieur pour tester l'envoi Public Function CheckVal() CheckVal=ready End function </script> <form name="TestForm"> <h3><center>Exemple de formulaire en VBS</center></h3><hr> Texte : <input type="text" size="10" name="texte"><br> <hr> <input type="button" value="OK" name="B1"> <input type="button" value="Annuler" name="B0"> </form> </body> </html>
De plus, dans la fenêtre d'Internet Explorer, il y a le message "Pour vous aider à protéger votre ordinateur, IE à restreint l'exécution des contrôles ActiveX de cette page Web ..."
Je ne vois pas ce qui ne fonctionne pas.
Pouvez-vous m'aider ?
Merci d'avance.
Partager