Page 1 sur 2
[..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : dim. 04 juin 2017 18:48
par franco
Bonjour à tous.
J'ai honte de vous demander cela, car je pense que c'est simple à résoudre.
Mais en tout cas, pas pour moi !
En effet, je cherche à
afficher, au sein d'une
interface AutoIt,
une page web avec les fonctions IE.
Celle de Discord : https://discordapp.com/
Résultat : On voit bien que
tout n'es pas chargé, plus précisément que
le chargement de la page ne se termine pas.
Alors que la même page ouverte directement via internet explorer fonctionne...
Capture d'écran :
http://i.imgur.com/V9OJzE2.png
Et vu que le chargement ne se termine pas, je peux pas quitter l'interface de façon traditionnelle...
Par contre, avec un autre lien (google par exemple) : aucun soucis.
Voici le code.
Code : Tout sélectionner
#include <GUIConstantsEx.au3>
#include <IE.au3>
#include <WindowsConstants.au3>
$form1 = GUICreate("", 640, 650, 0, 0, $WS_OVERLAPPEDWINDOW + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
$DiscordBT = GUICtrlCreateButton("Discord", 5, 5, 120, 20)
Local $objSK = _IECreateEmbedded()
GUICtrlCreateObj($objSK, 0, 30, 640, 580)
GUICtrlSetResizing(-1, 102)
GUISetState(@SW_SHOW) ;Show GUI
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
;~ _IEAction($objSK, "STOP")
;~ _IEQuit($objSK)
Exit
Case $DiscordBT
$lien_1 = "https://google.fr"
$lien_discord = "https://discordapp.com/"
_IENavigate($objSK, $lien_discord); Attach = 0 je suppose que tu l'as dans un GUI, Visible, Retour immédiat pour être gérer par IELoadWait, donne le focus à la fenêtre
_IELoadWait($objSK)
MsgBox(0, "", "test")
EndSwitch
WEnd
Pouvez-vous m'éclairer sur le souci ? Et me donnez des pistes ?
Merci à vous et bonne soirée.
++
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : dim. 04 juin 2017 21:52
par Numeric
Salut, je détecte déjà une répétition de fonctions:
en effet quand tu utilises
sans mettre le paramètre $iWait = 0 , tu n'as plus besoins d'utiliser
Maintenant pour contrôler le retour manuellement, il faudrait soit faire
soit configurer un hotkey.....
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : dim. 04 juin 2017 23:20
par franco
Salut Numeric.
Et merci pour ta réponse.
Le message (lié à msgbox) s'affiche. Donc pas besoin d'attendre le chargement.
Par contre, le chargement de la page reste inachevé... Donc inexploitable, je le crains.
Ah, une autre question : La fonction _IECreateEmbedded() est intéressante... Existe-t-il la même chose pour Firefox ?
J'ai les include FF.au3 et FFEx.au3 : et je ne vois pas comment faire pareil...
++
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : lun. 05 juin 2017 18:07
par Utilisateur 3309 supprimé
Bonjour,
https://discordapp.com/ ne fonctionne pas correctement dans IE11, donc je pense que le problème viens de là...sans parler du fait que la page, dans autoit doit certainement s'afficher en quiks mode (moteur de rendu de IE7, non compatible HTML5). la page de discordapp ne contient pas la balise:
<meta http-equiv="x-ua-compatible" content="IE=Edge"/>
qui permet d'empecher le passage en quirks mode, Mais même en forcant un rendu en IE11, il manque des éléments au milieu de la page.
Regarde de ce côté:
https://www.autoitscript.com/forum/topi ... -in-a-gui/
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : lun. 05 juin 2017 18:34
par Utilisateur 3309 supprimé
essaie ceci, ca fonctionne chez moi, du moins ca m'affiche la page comme dans IE11.
Code : Tout sélectionner
#RequireAdmin
#include <GUIConstantsEx.au3>
#include <IE.au3>
#include <WindowsConstants.au3>
$form1 = GUICreate("", 640, 650, 0, 0, $WS_OVERLAPPEDWINDOW + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
$DiscordBT = GUICtrlCreateButton("Discord", 5, 5, 120, 20)
Local $objSK = _IECreateEmbedded()
GUICtrlCreateObj($objSK, 0, 30, 640, 580)
GUICtrlSetResizing(-1, 102)
GUISetState(@SW_SHOW) ;Show GUI
$apps = @ScriptName
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION",$apps,"REG_DWORD","11000")
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION",$apps,"REG_DWORD","11000")
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
;on supprime les données pour garder un Base de registre propre
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION",$apps)
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION",$apps)
Exit
Case $DiscordBT
$lien_1 = "https://google.fr"
$lien_discord = "https://discordapp.com/"
_IENavigate($objSK, $lien_discord)
;_IELoadWait($objSK)
;MsgBox(0, "", "test")
EndSwitch
WEnd
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : mar. 06 juin 2017 13:50
par jguinch
Pour éviter d'avoir recours aux droits administrateur, remplacer HKEY_LOCAL_MACHINE par HKEY_CURRENT_USER et supprimer #RequireAdmin
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : mar. 06 juin 2017 15:04
par franco
Salut.
Merci à vous tous.
Mais même avec ça, le résultat reste inchangé...
Code : Tout sélectionner
;~ #RequireAdmin
#include <GUIConstantsEx.au3>
#include <IE.au3>
#include <WindowsConstants.au3>
$form1 = GUICreate("", 640, 650, 0, 0, $WS_OVERLAPPEDWINDOW + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
$DiscordBT = GUICtrlCreateButton("Discord", 5, 5, 120, 20)
Local $objSK = _IECreateEmbedded()
GUICtrlCreateObj($objSK, 0, 30, 640, 580)
GUICtrlSetResizing(-1, 102)
GUISetState(@SW_SHOW) ;Show GUI
$apps = @ScriptName
RegWrite("HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION",$apps,"REG_DWORD","11000")
RegWrite("HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION",$apps,"REG_DWORD","11000")
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
;on supprime les données pour garder un Base de registre propre
RegDelete("HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION",$apps)
RegDelete("HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION",$apps)
Exit
Case $DiscordBT
$lien_1 = "https://google.fr"
$lien_discord = "https://discordapp.com/"
_IENavigate($objSK, $lien_discord)
;_IELoadWait($objSK)
;MsgBox(0, "", "test")
EndSwitch
WEnd
Je crois que je vais laisser tomber, tant pis.
@++ et merci encore.
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : mar. 06 juin 2017 16:09
par jguinch
Je viens de faire le test :
- Avec le script AutoIt : problème d'affichage
- Avec IE11 : problème d'affichage
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : mar. 06 juin 2017 19:13
par Utilisateur 3309 supprimé
oui c'est ce que je dis plus haut, La home page de ce site n'est pas compatible IE...donc on ne peut pas esperer de miracle dans Autoit.
Il faudrait prévenir le webmaster...je vois mal un site internet s’asseoir sur 30/40% des utilisateurs potentiels...
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : mar. 06 juin 2017 19:14
par Utilisateur 3309 supprimé
jguinch a écrit : ↑mar. 06 juin 2017 13:50
Pour éviter d'avoir recours aux droits administrateur, remplacer HKEY_LOCAL_MACHINE par HKEY_CURRENT_USER et supprimer #RequireAdmin
Sur windows 10, sans le #RequireAdmin regwrite n'ecrivait rien dans la base de registre et n'affichait aucune erreur...
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : mar. 06 juin 2017 21:39
par franco
Salut.
Même s'il y a un problème d'affichage, on peut se connecter, et aucun souci par la suite...
Mais en AutoIt, ce problème est surement la cause de ce bordel
Donc merci à tout le monde, je clos le sujet.
Je vais voir si je peux leur "tweeter" cela.
++
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : mar. 06 juin 2017 22:47
par orax
C'est bizarre, j'ai essayé avec un Windows 7 et IE 11, et la page s'affichait correctement.
franco a écrit : ↑mar. 06 juin 2017 21:39Donc merci à tout le monde, je clos le sujet.

Quel dommage, j'avais une solution à proposer, mais j'arrive trop tard... Tant pis !!
► Afficher le texte
Code : Tout sélectionner
#include <GUIConstantsEx.au3>
#include <IE.au3>
#include <WindowsConstants.au3>
$form1 = GUICreate("", 640, 650, 0, 0, $WS_OVERLAPPEDWINDOW + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
$DiscordBT = GUICtrlCreateButton("Discord", 5, 5, 120, 20)
Local $objSK = _IECreateEmbedded()
GUICtrlCreateObj($objSK, 0, 30, 640, 580)
GUICtrlSetResizing(-1, 102)
GUISetState(@SW_SHOW) ;Show GUI
;~ $apps = @ScriptName ; <== ça ne peut marcher que si le script est compilé
$apps = @Compiled ? @ScriptName : StringRegExpReplace(@AutoItExe, ".+\\", "")
RegWrite("HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION",$apps,"REG_DWORD","11000")
RegWrite("HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION",$apps,"REG_DWORD","11000")
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
;on supprime les données pour garder un Base de registre propre
RegDelete("HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION",$apps)
RegDelete("HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION",$apps)
Exit
Case $DiscordBT
$lien_1 = "https://google.fr"
$lien_discord = "https://discordapp.com/"
_IENavigate($objSK, $lien_discord)
;_IELoadWait($objSK)
;MsgBox(0, "", "test")
EndSwitch
WEnd
Pour moi, ça marche avec Windows 7.
On pourrait aussi utiliser les fonctions _IE_EmbeddedSetBrowserEmulation() et _IE_EmbeddedRemoveBrowserEmulation(). Voir le lien que cetipabo avait proposé :
IE Embedded Control Versioning
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : mer. 07 juin 2017 16:29
par franco
Salut.
Franco a écrit :Donc merci à tout le monde, je clos le sujet.

orax a écrit :Quel dommage, j'avais une solution à proposer, mais j'arrive trop tard... Tant pis !!

J'ai bien fait de clore le sujet, puisqu'il est résolu grâce à toi.
Maintenant, y'a plus qu'à finaliser... Facile, vu que le GROS du boulot a déjà été fait
Au moins, je n'aurais plus besoin d'installer cet appli. ^^
Petit EDIT : j'utiliserais donc ce lien :
http://discordapp.com/login
Encore merci à tous cette fois-ci

++
Re: [R] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : mer. 07 juin 2017 17:49
par Utilisateur 3309 supprimé
Chez moi sur windows 10 et IE11 la page est incomplete contrairement a chrome, et avec la version compilée de Orax c'est idem:
On dirait qu'il y a un bug avec la localisation. c'est en anglais sur IE, et en Francais sur Chrome.
Et avec Chrome:

Re: [R] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : mer. 07 juin 2017 19:13
par franco
Lu'
Chez moi sur windows 10 et IE11 la page est incomplete contrairement a chrome, et avec la version compilée de Orax c'est idem:
On dirait qu'il y a un bug avec la localisation. c'est en anglais sur IE, et en Francais sur Chrome.
Comme pour moi.
Mais ça n'empêche pas le "login". Ouf ^^
Autre chose : j'essaye depuis un "loooooong" moment de supprimer les mots de passe IE, silencieusement (de façon invisible)...
Mais j'ai jamais trouvé comment faire.
J'utilise donc ceci :
Code : Tout sélectionner
;You can delete/clear others things by changing $ClearID's value:
;History Only = 1
;Cookies Only = 2
;Temporary Internet Files Only = 8
;Form Data Only = 16
;Password History Only = 32
;Everything = 255
;~ RunWait("RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 2")
$ClearID = 2
RunWait("RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess " & $ClearID)
Ca fonctionne mais j'ai une fenêtre de progression (IE).
J'ai trouvé ceci :
https://www.autoitscript.com/forum/topi ... nt=1031872
=> Toujours pareil.
Avez-vous une idée, une piste ? Merci.
Et ensuite, promos : je vous embête plus.
++
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : jeu. 08 juin 2017 15:53
par franco
Lu'
Bon, vu que ma curiosité a été piqué au vif, j'ai demandé sur le twitter (discord) si c'était normal cet affichage sur IE.
https://twitter.com/little_boy62/status ... 8879405056
En résumé, réponse de kikoolol : Ba IE n'est pô supporté na ! Faut utiliser un autre navigateur. (FF, chrome, opera)
Trop LOL.
Même si J'utilise pas IE (sauf pour les scripts), de nombreuses personnes l'utilisent encore... LOL
PS : ma dernière question reste toujours d'actualité, et je n'ai pas encore trouvé le saint graal. lol
++
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : jeu. 08 juin 2017 16:13
par orax
franco a écrit : ↑mer. 07 juin 2017 19:13j'essaye depuis un "loooooong" moment de supprimer les mots de passe IE, silencieusement (de façon invisible)...
Je n'ai malheureusement pas trouvé une meilleure solution. Mais peut-être qu'on pourrait supprimer les fichiers où ils sont stockés. Voir
Password Storage Locations sur la page
http://www.nirsoft.net/utils/internet_e ... sword.html
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : jeu. 08 juin 2017 20:24
par franco
Lu'
« Je n'ai malheureusement pas trouvé une meilleure solution. Mais peut-être qu'on pourrait supprimer les fichiers où ils sont stockés. Voir Password Storage »
Figure toi que j'ai essayé pas mal de dossiers... Mais je ne connaissais pas ce lien. Donc merci à toi.
Je vais tenter la chose.
De plus, avec les outils de Nirsoft, il utilise souvent des commandes DOS.
Peut-être qu'on peut supprimer le cache (etc) via ce procédé...
Je vais tenter, je reviens.
++
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : jeu. 08 juin 2017 20:48
par franco
Lu'
J'ai essayé IE PassView
Il me sort ça :
https://discordapp.com/ Saisie semi-automatique Coffre de Windows
MDP enregistré dans : coffre de windows... En gros :
Démarrer > Exécuter > netplwiz > options avancées > Mots de passe > Gérer les mots de passe...
Et bien sur, le mdp s'y trouve.
Je crois que je vais laisser tomber...
++
Re: [..] Problème de long chargement avec _IECreateEmbedded et _IENavigate
Posté : ven. 09 juin 2017 00:02
par orax
Eh... je ne vois pas où est la difficulté. Dans la paragraphe Password Storage Locations tout est indiqué. Les mots de passe des sites sont stockés dans HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\IntelliForms\Storage2