| |
Posté le 30 janvier 2014 - 15:51 |
Bonjour,
Dans une fenêtre WinDev, est-ce qu'il est possible d'incorporer un navigateur internet dont la version est supérieur à IE7.
j'ai essayé le Control ActiveX "Microsoft WebBrowser", le champ HTML, un champ XAML (.NET 3.0) et la classe CiExplore. Et toutes c'est donne IE7.
le problème que j'ai, c'est que un des sites que j'encapsule dans ma fenêtre WinDev ne support plus IE7.
Sinon est-ce possible de simuler un navigateur autre IE, comme par exemple Chrome ou firefox ?
Merci, >René Bisson |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 23 messages Popularité : +2 (2 votes) |
|
Posté le 30 janvier 2014 - 17:31 |
Re-bonjour,
En cherchant sur internet j'ai trouvé sur un forum une solution potentiel, il me reste à la tester chez mon client en problème. mais je suis confiant.
La solution consiste à ajouter une clé de registre pour dire que pour un EXE donné, je veux que le WebBrowser ActiveX emule une version en particulier.
Il semblerait que pour des raisons de sécurité, la version émulé à défaut est IE7.
Voir les liens suivants : pour plus de détail : http://stackoverflow.com/questions/4612255/regarding-ie9-webbrowser-control http://msdn.microsoft.com/en-us/library/ee330730(v=vs.85).aspx
Voilà, en espérant avoir aidé d'autre dev
>René B. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 841 messages Popularité : +19 (27 votes) |
|
Posté le 21 mai 2014 - 18:33 |
Bonjour René,
J'avais déjà lu ce topique mais qu'en est il sur l'exe distribué. Il faudrait modifier la clef de registre du client. J'ai toujours eu ce problème... et je n'en vois pas la solution.
Bonne soirée
-- >Miro |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 962 messages Popularité : +183 (185 votes) |
|
Posté le 22 mai 2014 - 02:36 |
hello, pour y voir plus clair avec cette histoire de version d'internet explorer utilisé dans les champs HTML et saisie HTML de windev, j' ai fait l'expérience suivante : Je crée un projet avec un champ HTML et un champ de saisie HTML et un bouton. dans le code HTML du champ HTML je mets :
<HTML> <HEAD> <TITLE>Navigateur</TITLE> </HEAD> <BODY BGCOLOR="#FFFFFF"> <CENTER> <SCRIPT LANGUAGE="JavaScript"> <!-- document.write("Navigateur : "+navigator.appName+"<br>"); document.write("Version : "+navigator.appVersion+"<br>"); document.write("Mode : "+document.documentMode+"<br>"); </SCRIPT> </BODY> </HTML> et je coche Autoriser l'exécution des scripts.
Dans le code du bouton je mets :
Trace(Texte_HTML)
si je ne mets rien dans la base de registre voici ce que j'obtiens en exécution par wdtst : 1 - Pour le champ HTML :
Navigateur:Microsoft Internet Explorer Version:4.0(compatible;MSIE7.0;Windows NT6.1;WOW64;Trident/7.0; Mode:5 2 - Dans la fenêtre Trace en appuyant sur le bouton
<\r><\n><BODY bgColor=#ffffff></BODY>
comme on peut le constater on est en IE7 ( MSIE 7.0 ne pas se fier à Version) il n'y a pas de guillemets pour l'attribut bgColor
Maintenant je mets ceci dans la base de registre pour passer en mode IE11 :
64bits ou32bits machine: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION
Valeur de clé DWord32bits:wdtst.exe donnée(en hexa) :2edf
32bits sur machine64bits: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION
Valeur de clé DWord32bits:wdtst.exe donnée(en hexa) :2edf
Quand je lance le programme (par le débogueur wdtst) voici ce que j'obtiens : 1 - Pour le champ HTML :
Navigateur:Netscape Version:5.0(Windows NT6.1;WOW64;Trident/7.0;rv:11.0)like Gecko Mode:11
2 - Dans la fenêtre Trace en appuyant sur le bouton
<body text="#000000"bgcolor="#ffffff"></body>
On est bien en mode IE11 (rv:11.0 ne pas se soucier des autres valeurs plutôt déroutantes) On a retrouvé les guillemets pour les attributs.
Si on compile le projet et que l'on lance le projet par son exécutable on repasse en IE7. Normal on a pas mis de clé de registre pour l'exécutable.
J'espère que cela vous rendra plus clair le problème posé.
>Ami calmant, J.P |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 23 messages Popularité : +2 (2 votes) |
|
Posté le 22 mai 2014 - 13:52 |
Bonjour,
Je n'avais pas fait de suivi, mais pour ma part, le fait d'ajouter la clé de registre pour mon EXE à résolu mon problème. Comme J.P l'a dit, il faut une clé de registre pour chaque EXE qui utilise l'activeX ou un champ HTML.
Pour tes EXE distribués, tu as juste à ajouter du code dans l'ouverture de ton projet qui va vérifier et ajouter la clé dans les registres windows en utilisant les fonctions de gestion des registre de WinDev. Mais attention, ton EXE va peut-être avoir besoins du manifeste Administrator afin d'écrire dans le registre. Sinon, je crois qu'il l'écrit dans un registre temporaire et qu'il faut l'ajouter à chaque démarage du EXE....
Bon Dev.
>René B. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 841 messages Popularité : +19 (27 votes) |
|
Posté le 22 mai 2014 - 15:13 |
Merci,
C'est bien ce que je craignais et avoir les message Windows xxx veut modifier la config etc... etc...
Ce n'est pas trop pratique pour distribuer.
Bon courage.
-- >Miro |
| |
| |
| | | |
|
| | |
| |
Posté le 22 mai 2014 - 15:30 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 841 messages Popularité : +19 (27 votes) |
|
Posté le 22 mai 2014 - 18:08 |
Merci Fabrice,
J'ai déjà tenté d'utiliser WebKit. L’intégration n'est pas trop compliquée mais le résultat très décevant. J'ai constaté à posteriori que la plus jeune dll date de 2010 ce qui explique tout. Je pense que le projet est abandonné. Awesomium lui coûte 2600 $ par Application distribuée, il y a intérêt à bien vendre l'appli ou en vendre beaucoup...
Ceci pour t’éviter de perdre du temps sur ces 2 la en cas de besoin.
Je vais tester les autres des que j'ai un peu de temps... IE7 c’était pas la crème des browser, mais j'ai appris à contourner les problèmes.
Merci encore
-- >Miro |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 962 messages Popularité : +183 (185 votes) |
|
Posté le 23 mai 2014 - 02:01 |
hello, GeckoFx et CefSharp c'est faisable mais cela oblige à rajouter de gros fichiers et il faut vérifier que la licence d'utilisation soit appropriée à l'usage. Pour GeckoFx il faut xulrunner Pour CefSharp il faut la libcef Pas sûr non plus que cela soit stable avec tous les types de pages web.
voilà ce que cela donne :
>Ami calmant, J.P |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 841 messages Popularité : +19 (27 votes) |
|
Posté le 23 mai 2014 - 06:21 |
@Jurassic Pork
Merci pour le renseignement.
Bonne journée
-- >Miro |
| |
| |
| | | |
|
| | |
| |
Posté le 07 juin 2014 - 10:28 |
| |
| |
| | | |
|
| | |
| |
Posté le 25 septembre 2014 - 19:48 |
Ami Jurassic et calmant a la fois.....
pourrrai-je disposer des sources de tests que tu as uilisee pour gecko et cfsharp.
j'essaie de creer un propre browser qui peut supporter une page web avec des applets java.
Merci d'avance.
>Andy |
| |
| |
| | | |
|
| | |
| |
Posté le 28 octobre 2014 - 02:23 |
ben un grand merci pour l'info!! marche impecc!! |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 23 messages Popularité : +2 (2 votes) |
|
Posté le 10 novembre 2014 - 17:20 |
Bonjour, voici le code de ma procédure globale qui est appelé dans le code d'ouverture de mon projet.
ProcedurePRJSetRegistKeyForIE()
nValueIE7 isint=7000 nValueIE8 isint=8000 nValueIE8_1 isint=8888 nValueIE9 isint=9000 nValueIE9_1 isint=9999 nValueIE10 isint=10000 nValueIE10_1 isint=10001 nValueIE11 isint=11000 nValueIE11_1 isint=11001 nValueMostRecent isint=0
sKEY_LOCALMACHINE_64BITS isstring="HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node" sKEY_LOCALMACHINE_IE_EMULE6432 isstring="HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION" sKEY_LOCALMACHINE_IE_EMULE isstring="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION"
sKEY_CURRENTUSER_64BITS isstring="HKEY_CURRENT_USER\SOFTWARE\Wow6432Node" sKEY_CURRENTUSER_IE_EMULE6432 isstring="HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION" sKEY_CURRENTUSER_IE_EMULE isstring="HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION"
sExeName isstring=fExtractPath(ExeInfo(exeName),fFileName+fExtension)
IFNOTRegistryExist(sKEY_CURRENTUSER_IE_EMULE)THEN RegistryCreateKey(sKEY_CURRENTUSER_IE_EMULE) END RegistrySetValue(sKEY_CURRENTUSER_IE_EMULE,sExeName,nValueMostRecent,RegistryTypeInt)
IFRegistreExiste(sKEY_LOCALMACHINE_64BITS)THEN IFNOTRegistryExist(sKEY_CURRENTUSER_IE_EMULE6432)THEN RegistryCreateKey(sKEY_CURRENTUSER_IE_EMULE6432) END RegistrySetValue(sKEY_CURRENTUSER_IE_EMULE6432,sExeName,nValueMostRecent,RegistryTypeInt) END
Bon Dev.
>René B. |
| |
| |
| | | |
|
| | |
| |
Posté le 02 mars 2015 - 21:46 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 41 messages Popularité : +2 (2 votes) |
|
Posté le 11 août 2015 - 23:31 |
Salut à tous. J'ai aussi fait une petite fonction qui fait le travail. Il suffit de l'appeler dans le code d'initialisation du projet. Merci à la contribution de Jurassic Pork qui m'a beaucoup aidé à comprendre le fonctionnement du bazar.
EVersion_ie est une Enumération IE7 IE8 IE8_Forcé IE9 IE9_Forcé IE10 IE10_Forcé IE11 IE11_Forcé FIN
Force_ie11_Emulation(EVersion_ie.IE11_Forcé)
ProcedureForce_ie11_Emulation(EVersion_ie) sValeurClé est unechaîne SELONEVersion_ie CASIE7 sValeurClé="7000" CASIE8 sValeurClé="8000" CASIE8_Forcé sValeurClé="8888" CASIE9 sValeurClé="9000" CASIE9_Forcé sValeurClé="9999" CASIE10 sValeurClé="10000" CASIE10_Forcé sValeurClé="10001" CASIE11 sValeurClé="11000" CASIE11_Forcé sValeurClé="11001" FIN
sEplacementRegistre est unechaîne="HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION"
SI PASEnModeTest()ALORS RegistreEcrit(sEplacementRegistre,ProjetInfo(piNomEXE)+".exe",sValeurClé,RegistreTypeEntier) SINON RegistreEcrit(sEplacementRegistre,"wdtst.exe",sValeurClé,RegistreTypeEntier) FIN
RETOUR > |
| |
| |
| | | |
|
| | |
| |
Posté le 06 décembre 2017 - 07:39 |
bonjour
je suis novice en programmation avec windev j ai vu ton code j aimerais l adapter a ma situation, je veux forcer IE a utiliser la version 9 . En regardant ton code je pense que cela peut m aider mais j aimerais savoir ou as tu place le premier code:
EVersion_ie est une Enumération IE7 IE8 IE8_Forcé IE9 IE9_Forcé IE10 IE10_Forcé IE11 IE11_Forcé FIN
Force_ie11_Emulation(EVersion_ie.IE11_Forcé)
>merci |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 41 messages Popularité : +2 (2 votes) |
|
Posté le 06 décembre 2017 - 17:14 |
Hello john, Tu as juste à remplacer
Force_ie11_Emulation(EVersion_ie.IE11_Forcé)
par
Force_ie11_Emulation(EVersion_ie.IE9_Forcé)
Dans le code d'initialisation du projet.
>Bon courage, en générale quand on parle ie c'est que le projet n'est hyper cool. |
| |
| |
| | | |
|
| | |
| |
Posté le 01 juillet 2021 - 21:27 |
Bonjour jurassic pork ! j'aimerais bien s'avoir comment tu a pu intégrer GeckoFx dans windev est ce possible de publier les sources windev >Amicalement |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 962 messages Popularité : +183 (185 votes) |
|
Posté le 02 juillet 2021 - 06:17 |
hello,
1 - Il ne faut pas s'adresser à quelqu'un en particulier : si la personne n'est plus présente ou ne veut pas répondre cela ne sert à rien. 2 - Il ne faut pas poser une question qui n'a pas rapport avec le titre initial : il faut poster un nouveau sujet.
3 - Quand le sujet commence à dater il faut se méfier de la pertinence de la question.
-- > Ami calmant, J.P |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 311 messages Popularité : +93 (137 votes) |
|
Posté le 02 juillet 2021 - 08:12 |
Salut Skynet, Je te signale que dans la 26 le champ HTML est fait maintenant avec chrome. Si tu veux rester dans les technologies Microsoft alors regarde Sur le dépôt , Mr terrier à mis un dépôt Edge. >Je suis d'accord avec Jurassic pour le reste |
| |
| |
| | | |
|
| | |