Je ne trouve pas la solution à un problème: j'essaye d'automatiser le
remplissage d'une formulaire sur une page web et pour valider il faut
cliquer sur un bouton/image. J'arrive à remplir le zone de texte
(input) à cocher des cases, mais pas moyen de trouver comment envoyer
l'info pour cliquer.
C'est donc "validate_button_text" qui l'interesse et c'est ce dernier
qui valide la saisie.
Pour l'instant, pour cocher une case j'utilise ça
Private Sub Command3_Click()
Dim objHtmlDocument As mshtml.IHTMLDocument2
'Fait référence au document du WebBrowser
Dim objbaliseInput As mshtml.IHTMLInputElement
Set objHtmlDocument = wb.Document
Set objbalises = objHtmlDocument.All.tags("input")
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
parci
bahn po a écrit :
Hello,
Je ne trouve pas la solution à un problème: j'essaye d'automatiser le remplissage d'une formulaire sur une page web et pour valider il faut cliquer sur un bouton/image. J'arrive à remplir le zone de texte (input) à cocher des cases, mais pas moyen de trouver comment envoyer l'info pour cliquer.
C'est donc "validate_button_text" qui l'interesse et c'est ce dernier qui valide la saisie.
Pour l'instant, pour cocher une case j'utilise ça
Private Sub Command3_Click() Dim objHtmlDocument As mshtml.IHTMLDocument2 'Fait référence au document du WebBrowser Dim objbaliseInput As mshtml.IHTMLInputElement Set objHtmlDocument = wb.Document
Set objbalises = objHtmlDocument.All.tags("input")
Tu retrouves le formulaire dans le document (collection Forms) et retourne les données avec la méthode submit du formulaire en question.
bahn po a écrit :
Hello,
Je ne trouve pas la solution à un problème: j'essaye d'automatiser le
remplissage d'une formulaire sur une page web et pour valider il faut
cliquer sur un bouton/image. J'arrive à remplir le zone de texte (input)
à cocher des cases, mais pas moyen de trouver comment envoyer l'info
pour cliquer.
C'est donc "validate_button_text" qui l'interesse et c'est ce dernier
qui valide la saisie.
Pour l'instant, pour cocher une case j'utilise ça
Private Sub Command3_Click()
Dim objHtmlDocument As mshtml.IHTMLDocument2
'Fait référence au document du WebBrowser
Dim objbaliseInput As mshtml.IHTMLInputElement
Set objHtmlDocument = wb.Document
Set objbalises = objHtmlDocument.All.tags("input")
Je ne trouve pas la solution à un problème: j'essaye d'automatiser le remplissage d'une formulaire sur une page web et pour valider il faut cliquer sur un bouton/image. J'arrive à remplir le zone de texte (input) à cocher des cases, mais pas moyen de trouver comment envoyer l'info pour cliquer.
C'est donc "validate_button_text" qui l'interesse et c'est ce dernier qui valide la saisie.
Pour l'instant, pour cocher une case j'utilise ça
Private Sub Command3_Click() Dim objHtmlDocument As mshtml.IHTMLDocument2 'Fait référence au document du WebBrowser Dim objbaliseInput As mshtml.IHTMLInputElement Set objHtmlDocument = wb.Document
Set objbalises = objHtmlDocument.All.tags("input")
Tu retrouves le formulaire dans le document (collection Forms) et retourne les données avec la méthode submit du formulaire en question.
bahn po
parci avait prétendu :
Tu retrouves le formulaire dans le document (collection Forms) et retourne les données avec la méthode submit du formulaire en question.
Je vais tenter mais pour une raison inconnu je n'arrete pas d'avoir des erreurs d'execution de type "-1 (ffffffe) " avec visual basic lorsque je lance le webbrowser.navigate "url.....". Du coup ça plante tout le temps :(
Galère.
parci avait prétendu :
Tu retrouves le formulaire dans le document (collection Forms) et retourne
les données avec la méthode submit du formulaire en question.
Je vais tenter mais pour une raison inconnu je n'arrete pas d'avoir des
erreurs d'execution de type "-1 (ffffffe) " avec visual basic lorsque
je lance le webbrowser.navigate "url.....". Du coup ça plante tout le
temps :(
Tu retrouves le formulaire dans le document (collection Forms) et retourne les données avec la méthode submit du formulaire en question.
Je vais tenter mais pour une raison inconnu je n'arrete pas d'avoir des erreurs d'execution de type "-1 (ffffffe) " avec visual basic lorsque je lance le webbrowser.navigate "url.....". Du coup ça plante tout le temps :(
Galère.
bahn po
parci avait écrit le 02/11/2008 :
Tu retrouves le formulaire dans le document (collection Forms) et retourne les données avec la méthode submit du formulaire en question.
Est-ce que je suis obligé de charger la page avec webbrowser ou est-il possible de la charger en mémoire et exécuter des commandes ?
parci avait écrit le 02/11/2008 :
Tu retrouves le formulaire dans le document (collection Forms) et retourne
les données avec la méthode submit du formulaire en question.
Est-ce que je suis obligé de charger la page avec webbrowser ou est-il
possible de la charger en mémoire et exécuter des commandes ?
Tu retrouves le formulaire dans le document (collection Forms) et retourne les données avec la méthode submit du formulaire en question.
Est-ce que je suis obligé de charger la page avec webbrowser ou est-il possible de la charger en mémoire et exécuter des commandes ?
Martin.boucher
Bonjour,
Pour soumettre un formulaire sur le clique d'un bouton, voici ce que je fait dans un de mes projets.
Private WithEvents HTMLButtonElement As MSHTML.HTMLButtonElement
'Soumettre For Each objbaliseInput In objbalises
If UCase(objbaliseInput.Name) = UCase("cmdSubmit") Then Set HTMLButtonElement = objbaliseInput HTMLButtonElement.Click End If
Next objbaliseInput
A+ Martin
On Sun, 02 Nov 2008 16:35:01 +0100, bahn po wrote:
Hello,
Je ne trouve pas la solution à un problème: j'essaye d'automatiser le remplissage d'une formulaire sur une page web et pour valider il faut cliquer sur un bouton/image. J'arrive à remplir le zone de texte (input) à cocher des cases, mais pas moyen de trouver comment envoyer l'info pour cliquer.
C'est donc "validate_button_text" qui l'interesse et c'est ce dernier qui valide la saisie.
Pour l'instant, pour cocher une case j'utilise ça
Private Sub Command3_Click() Dim objHtmlDocument As mshtml.IHTMLDocument2 'Fait référence au document du WebBrowser Dim objbaliseInput As mshtml.IHTMLInputElement Set objHtmlDocument = wb.Document
Set objbalises = objHtmlDocument.All.tags("input")
Pour soumettre un formulaire sur le clique d'un bouton, voici ce que
je fait dans un de mes projets.
Private WithEvents HTMLButtonElement As
MSHTML.HTMLButtonElement
'Soumettre
For Each objbaliseInput In objbalises
If UCase(objbaliseInput.Name) = UCase("cmdSubmit") Then
Set HTMLButtonElement = objbaliseInput
HTMLButtonElement.Click
End If
Next objbaliseInput
A+
Martin
On Sun, 02 Nov 2008 16:35:01 +0100, bahn po <bahnpo@vrotiska.net>
wrote:
Hello,
Je ne trouve pas la solution à un problème: j'essaye d'automatiser le
remplissage d'une formulaire sur une page web et pour valider il faut
cliquer sur un bouton/image. J'arrive à remplir le zone de texte
(input) à cocher des cases, mais pas moyen de trouver comment envoyer
l'info pour cliquer.
C'est donc "validate_button_text" qui l'interesse et c'est ce dernier
qui valide la saisie.
Pour l'instant, pour cocher une case j'utilise ça
Private Sub Command3_Click()
Dim objHtmlDocument As mshtml.IHTMLDocument2
'Fait référence au document du WebBrowser
Dim objbaliseInput As mshtml.IHTMLInputElement
Set objHtmlDocument = wb.Document
Set objbalises = objHtmlDocument.All.tags("input")
Pour soumettre un formulaire sur le clique d'un bouton, voici ce que je fait dans un de mes projets.
Private WithEvents HTMLButtonElement As MSHTML.HTMLButtonElement
'Soumettre For Each objbaliseInput In objbalises
If UCase(objbaliseInput.Name) = UCase("cmdSubmit") Then Set HTMLButtonElement = objbaliseInput HTMLButtonElement.Click End If
Next objbaliseInput
A+ Martin
On Sun, 02 Nov 2008 16:35:01 +0100, bahn po wrote:
Hello,
Je ne trouve pas la solution à un problème: j'essaye d'automatiser le remplissage d'une formulaire sur une page web et pour valider il faut cliquer sur un bouton/image. J'arrive à remplir le zone de texte (input) à cocher des cases, mais pas moyen de trouver comment envoyer l'info pour cliquer.
C'est donc "validate_button_text" qui l'interesse et c'est ce dernier qui valide la saisie.
Pour l'instant, pour cocher une case j'utilise ça
Private Sub Command3_Click() Dim objHtmlDocument As mshtml.IHTMLDocument2 'Fait référence au document du WebBrowser Dim objbaliseInput As mshtml.IHTMLInputElement Set objHtmlDocument = wb.Document
Set objbalises = objHtmlDocument.All.tags("input")
Pour soumettre un formulaire sur le clique d'un bouton, voici ce que je fait dans un de mes projets.
Private WithEvents HTMLButtonElement As MSHTML.HTMLButtonElement
'Soumettre For Each objbaliseInput In objbalises
If UCase(objbaliseInput.Name) = UCase("cmdSubmit") Then Set HTMLButtonElement = objbaliseInput HTMLButtonElement.Click End If
Next objbaliseInput
A+ Martin
Merci beaucoup, je vais des essais des que j'en aurai fini avec des erreurs -1 -2 -3 ou -4 avec webbrowser :(
A++
Martin.boucher
C'est pas banal ces erreur là.
Est-ce que tu as les mêmes erreur quand tu tapes l'adresse dans ton navigateur normal ? Si tu veux, fournis nous l'URL, pour qu'on l'essai de notre côté.
On Mon, 03 Nov 2008 19:09:47 +0100, bahn po wrote:
Martin Boucher a émis l'idée suivante :
Bonjour,
Pour soumettre un formulaire sur le clique d'un bouton, voici ce que je fait dans un de mes projets.
Private WithEvents HTMLButtonElement As MSHTML.HTMLButtonElement
'Soumettre For Each objbaliseInput In objbalises
If UCase(objbaliseInput.Name) = UCase("cmdSubmit") Then Set HTMLButtonElement = objbaliseInput HTMLButtonElement.Click End If
Next objbaliseInput
A+ Martin
Merci beaucoup, je vais des essais des que j'en aurai fini avec des erreurs -1 -2 -3 ou -4 avec webbrowser :(
A++
C'est pas banal ces erreur là.
Est-ce que tu as les mêmes erreur quand tu tapes l'adresse dans ton
navigateur normal ?
Si tu veux, fournis nous l'URL, pour qu'on l'essai de notre côté.
On Mon, 03 Nov 2008 19:09:47 +0100, bahn po <bahnpo@vrotiska.net>
wrote:
Martin Boucher a émis l'idée suivante :
Bonjour,
Pour soumettre un formulaire sur le clique d'un bouton, voici ce que
je fait dans un de mes projets.
Private WithEvents HTMLButtonElement As
MSHTML.HTMLButtonElement
'Soumettre
For Each objbaliseInput In objbalises
If UCase(objbaliseInput.Name) = UCase("cmdSubmit") Then
Set HTMLButtonElement = objbaliseInput
HTMLButtonElement.Click
End If
Next objbaliseInput
A+
Martin
Merci beaucoup, je vais des essais des que j'en aurai fini avec des
erreurs -1 -2 -3 ou -4 avec webbrowser :(
Est-ce que tu as les mêmes erreur quand tu tapes l'adresse dans ton navigateur normal ? Si tu veux, fournis nous l'URL, pour qu'on l'essai de notre côté.
On Mon, 03 Nov 2008 19:09:47 +0100, bahn po wrote:
Martin Boucher a émis l'idée suivante :
Bonjour,
Pour soumettre un formulaire sur le clique d'un bouton, voici ce que je fait dans un de mes projets.
Private WithEvents HTMLButtonElement As MSHTML.HTMLButtonElement
'Soumettre For Each objbaliseInput In objbalises
If UCase(objbaliseInput.Name) = UCase("cmdSubmit") Then Set HTMLButtonElement = objbaliseInput HTMLButtonElement.Click End If
Next objbaliseInput
A+ Martin
Merci beaucoup, je vais des essais des que j'en aurai fini avec des erreurs -1 -2 -3 ou -4 avec webbrowser :(
A++
bahn po
Il se trouve que Martin Boucher a formulé :
C'est pas banal ces erreur là.
Est-ce que tu as les mêmes erreur quand tu tapes l'adresse dans ton navigateur normal ? Si tu veux, fournis nous l'URL, pour qu'on l'essai de notre côté.
l'url de mon projet sur 192.168.1.1 qui est l'adresse de la livebox. Hier j'ai pu bidouiller pendant des heures avec VB sans soucis.
Maintenant webbrowser merde à mort, même avec google.
Le code est minimaliste, c'est
Call WebBrowser1.Navigate("www.google.fr")
que j'appelle avec un bouton. Le plus fou, si je crée un nouveau projet j'ai une erreur -1 après un click. Si je récupère un vieux projet avec un webbrowser et que j'efface tous le code, ça marche mais après 5 click sur le bouton j'ai erreur -3 ou -5 (suivant le nombre de click avant plantage). La dll de webbrowser est la même, les composants aussi. Mais plus j'en enlève (d'un vieux projet) plus je m'approche de l'erreur -x (ou x est variable suivant ce qui reste sur la feuille), donc grosse galère :(
Je me demande si il y a un cache pour ce webbrowser, si oui est-il le même que IE6 installé sur la machine ? Peut être un cookie ou un certificat qui fait planter, mystère complet pour l'instant.
Il se trouve que Martin Boucher a formulé :
C'est pas banal ces erreur là.
Est-ce que tu as les mêmes erreur quand tu tapes l'adresse dans ton
navigateur normal ?
Si tu veux, fournis nous l'URL, pour qu'on l'essai de notre côté.
l'url de mon projet sur 192.168.1.1 qui est l'adresse de la livebox.
Hier j'ai pu bidouiller pendant des heures avec VB sans soucis.
Maintenant webbrowser merde à mort, même avec google.
Le code est minimaliste, c'est
Call WebBrowser1.Navigate("www.google.fr")
que j'appelle avec un bouton. Le plus fou, si je crée un nouveau projet
j'ai une erreur -1 après un click. Si je récupère un vieux projet avec
un webbrowser et que j'efface tous le code, ça marche mais après 5
click sur le bouton j'ai erreur -3 ou -5 (suivant le nombre de click
avant plantage). La dll de webbrowser est la même, les composants
aussi. Mais plus j'en enlève (d'un vieux projet) plus je m'approche de
l'erreur -x (ou x est variable suivant ce qui reste sur la feuille),
donc grosse galère :(
Je me demande si il y a un cache pour ce webbrowser, si oui est-il le
même que IE6 installé sur la machine ? Peut être un cookie ou un
certificat qui fait planter, mystère complet pour l'instant.
Est-ce que tu as les mêmes erreur quand tu tapes l'adresse dans ton navigateur normal ? Si tu veux, fournis nous l'URL, pour qu'on l'essai de notre côté.
l'url de mon projet sur 192.168.1.1 qui est l'adresse de la livebox. Hier j'ai pu bidouiller pendant des heures avec VB sans soucis.
Maintenant webbrowser merde à mort, même avec google.
Le code est minimaliste, c'est
Call WebBrowser1.Navigate("www.google.fr")
que j'appelle avec un bouton. Le plus fou, si je crée un nouveau projet j'ai une erreur -1 après un click. Si je récupère un vieux projet avec un webbrowser et que j'efface tous le code, ça marche mais après 5 click sur le bouton j'ai erreur -3 ou -5 (suivant le nombre de click avant plantage). La dll de webbrowser est la même, les composants aussi. Mais plus j'en enlève (d'un vieux projet) plus je m'approche de l'erreur -x (ou x est variable suivant ce qui reste sur la feuille), donc grosse galère :(
Je me demande si il y a un cache pour ce webbrowser, si oui est-il le même que IE6 installé sur la machine ? Peut être un cookie ou un certificat qui fait planter, mystère complet pour l'instant.
Vincent Guichard
> Je me demande si il y a un cache pour ce webbrowser, si oui est-il le même que IE6 installé sur la machine ? Peut être un cookie ou un certificat qui fait planter, mystère complet pour l'instant.
Probablement, voire même IE5 ou IE4, vu l'age du composant. En tout cas il réutilise le moteur de IE.
Vincent Guichard
> Je me demande si il y a un cache pour ce webbrowser, si oui est-il le
même que IE6 installé sur la machine ? Peut être un cookie ou un
certificat qui fait planter, mystère complet pour l'instant.
Probablement, voire même IE5 ou IE4, vu l'age du composant. En tout cas
il réutilise le moteur de IE.
> Je me demande si il y a un cache pour ce webbrowser, si oui est-il le même que IE6 installé sur la machine ? Peut être un cookie ou un certificat qui fait planter, mystère complet pour l'instant.
Probablement, voire même IE5 ou IE4, vu l'age du composant. En tout cas il réutilise le moteur de IE.
Vincent Guichard
bahn po
Martin Boucher a écrit :
Bonjour,
Pour soumettre un formulaire sur le clique d'un bouton, voici ce que je fait dans un de mes projets.
Private WithEvents HTMLButtonElement As MSHTML.HTMLButtonElement
'Soumettre For Each objbaliseInput In objbalises
If UCase(objbaliseInput.Name) = UCase("cmdSubmit") Then Set HTMLButtonElement = objbaliseInput HTMLButtonElement.Click End If
Next objbaliseInput
A+ Martin
Bon j'ai re-installé XP sur le même DD et re-installé VB6, il fonctionne donc farpaitement!
Donc, je valide le formulaire avec
Dim objbaliseInput As MSHTML.IHTMLInputElement
'
For Each objbaliseInput In objbalises If objbaliseInput.Name = "frm_action" Then objbaliseInput.Form.submit Next objbaliseInput
' '
Question: Quelle(s) difference(s) entre IHTML et HTML ?
Merci!
Martin Boucher a écrit :
Bonjour,
Pour soumettre un formulaire sur le clique d'un bouton, voici ce que
je fait dans un de mes projets.
Private WithEvents HTMLButtonElement As
MSHTML.HTMLButtonElement
'Soumettre
For Each objbaliseInput In objbalises
If UCase(objbaliseInput.Name) = UCase("cmdSubmit") Then
Set HTMLButtonElement = objbaliseInput
HTMLButtonElement.Click
End If
Next objbaliseInput
A+
Martin
Bon j'ai re-installé XP sur le même DD et re-installé VB6, il
fonctionne donc farpaitement!
Donc, je valide le formulaire avec
Dim objbaliseInput As MSHTML.IHTMLInputElement
'
For Each objbaliseInput In objbalises
If objbaliseInput.Name = "frm_action" Then objbaliseInput.Form.submit
Next objbaliseInput
'
'
Question: Quelle(s) difference(s) entre IHTML et HTML ?