[R] Utilisation IE.au3

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
raptorzil
Niveau 1
Niveau 1
Messages : 7
Enregistré le : lun. 02 mars 2015 10:39
Status : Hors ligne

[R] Utilisation IE.au3

#1

Message par raptorzil »

Bonjour à tous,

Je viens sur ce forum afin que les grands esprits qui s'y trouvent m'aiguille devant mon problème.
Voici mon code.

Code : Tout sélectionner

#include <IE.au3>
#include <Date.au3>
#include <MsgBoxConstants.au3>


;____Lancer IE avec la page de test
Local $oIE = _IECreate("C:\temp\test.htm")

Sleep(5000)

Local $hTimer = TimerInit()
Local $oSubmit = _IEGetObjByName($oIE, "Bouton6")


If IsObj($oSubmit) Then
    Local $test = _IEAction($oSubmit, "click")

    Sleep(2000)

    ;MsgBox($MB_SYSTEMMODAL, "Click", $test)
else 
    MsgBox($MB_SYSTEMMODAL, "Test recup bouton 6", $oSubmit)
EndIf


Local $fDiff = TimerDiff($hTimer)

;MsgBox($MB_SYSTEMMODAL, "Time Difference", $fDiff)

_IEQuit($oIE)
Ce code vise bien un bouton qui se trouve sur une page html défini comme ceci:

Code : Tout sélectionner

 <INPUT ID = "imp" TYPE = "BUTTON" VALUE = "Imprimer vignette"
   NAME = "Bouton6" OnClick="">
Le problème étant que je n'arrive pas à récuperer l'objet en prenant par le 'name'.

Quelqu'un saurait pourquoi cela ne fonctionne pas?

merci d'avance.
Modifié en dernier par raptorzil le lun. 02 mars 2015 14:39, modifié 1 fois.
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..] Utilisation IE.au3

#2

Message par timmalos »

Il se peut que votre page contienne des Frames?
raptorzil
Niveau 1
Niveau 1
Messages : 7
Enregistré le : lun. 02 mars 2015 10:39
Status : Hors ligne

Re: [..] Utilisation IE.au3

#3

Message par raptorzil »

Voulez vous que je poste la page entière? du moins le code html?

Je pense éffectivement qu'il y a des frames. (fin du code de la page: </noframe>) plus les déclarations <a>
► Afficher le texte
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..] Utilisation IE.au3

#4

Message par timmalos »

Je ne vois pas le debut de la balise <noframe> il manque du code, essayez d'utiliser un outil de Debug, il y a DebugBar sous IE et de multiples applications pour Firefox et CHrome qui vous permettront en cliquant sur votre bouton d'obtenir toutes les informations necessaires pour débuguer ;)
raptorzil
Niveau 1
Niveau 1
Messages : 7
Enregistré le : lun. 02 mars 2015 10:39
Status : Hors ligne

Re: [..] Utilisation IE.au3

#5

Message par raptorzil »

Je look ça et je reviens vers vous :)
raptorzil
Niveau 1
Niveau 1
Messages : 7
Enregistré le : lun. 02 mars 2015 10:39
Status : Hors ligne

Re: [..] Utilisation IE.au3

#6

Message par raptorzil »

Quand je regarde la page entière à l'aide du debugger IE, il n'y a pas d'autre balise <noframes>. finalement elle sert a rien ^^ (faudrait que j'avertisse le dev qui a fait cette page de test)


Du coup si il n'y a pas de frame, pourquoi a votre humble avis, cela ne fonctionne pas?
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Utilisation IE.au3

#7

Message par mikell »

Hum je chercherais plutôt du côté du script :mrgreen:
Ake chez moi ceci fonctionne

Code : Tout sélectionner

#include <IE.au3>

Local $oIE = _IECreate(@desktopdir & "\test.htm")
Sleep(500)
Local $oSubmit = _IEGetObjByName($oIE, "Bouton6")
MsgBox(0, "", $oSubmit.value)
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
raptorzil
Niveau 1
Niveau 1
Messages : 7
Enregistré le : lun. 02 mars 2015 10:39
Status : Hors ligne

Re: [..] Utilisation IE.au3

#8

Message par raptorzil »

Vous vous arrivez bien a récupérer l'objet du coup?

Car d'après ce que je vois votre script est similaire au mien.. sauf que moi ça marche pas.

j’obtiens ça quand je le lance a partir de l’éditeur Autoit :

>"C:\Program Files\AutoIt3\SciTE\..\autoit3.exe" /ErrorStdOut "c:\temp\test.au3"
--> IE.au3 T3.0-1 Error from function _IELoadWait, $_IESTATUS_ClientDisconnected (-2147417848, Browser has been deleted prior to operation.)
--> IE.au3 T3.0-1 Error from function _IEPropertyGet, $_IESTATUS_InvalidObjectType
--> IE.au3 T3.0-1 Warning from function _IEGetObjByName, $_IESTATUS_NoMatch (Name: Bouton6, Index: 0)
--> IE.au3 T3.0-1 Error from function _IEQuit, $_IESTATUS_InvalidObjectType
>Exit code: 0 Time: 6.902

Du coup je me dis que si il y a autant d'erreur, c'est pas bon ^^

Version IE9.
raptorzil
Niveau 1
Niveau 1
Messages : 7
Enregistré le : lun. 02 mars 2015 10:39
Status : Hors ligne

Re: [..] Utilisation IE.au3

#9

Message par raptorzil »

En plus j'execute ceci sur un poste nouvellement installé. W7 tout neuf quoi. aucune GPo ou autre chose.

J'ai une piste: #RequireAdmin. qui semble au moins bien exécuter le script.

Même si je n'ai pas le résultat attendu. au moins le IEQuit s’exécute, alors qu'avant non..

Le click a l'air de répondre en resultat : 1 ce qui indique Success d'après la DOC.

Je continu a investigué sur mon problème...


Bon Il semblerait que juste rajouter #RequireAdmin en début de script, résout mon problème.

Merci pour ceux qui ont regarder mon poste je le passe en résolu
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [R] Utilisation IE.au3

#10

Message par jguinch »

J'ai quand même du mal à croire que l'élévation de privilège soit nécessaire pour automatiser IE...
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
raptorzil
Niveau 1
Niveau 1
Messages : 7
Enregistré le : lun. 02 mars 2015 10:39
Status : Hors ligne

Re: [R] Utilisation IE.au3

#11

Message par raptorzil »

Et pourtant, quand ton UAC est actif et que le mode protéger de ie aussi. il semblerait qu'il y ai besoin de cette élévation de privilège...

Du moins moi cela m'a permis de résoudre mon problème.
Répondre