Le vrai sujet : Windev et contrôle Active X IE (désolé pas de sujet windev...)

AntonyFauvergue Messages postés 1 Date d'inscription mardi 24 juin 2003 Statut Membre Dernière intervention 6 mai 2009 - 6 mai 2009 à 11:49
cetincig Messages postés 1 Date d'inscription dimanche 27 juin 2010 Statut Membre Dernière intervention 3 juillet 2010 - 3 juil. 2010 à 23:31
Automation : le but étant de naviguer automatiquement sur Intranet. Le problème : lorsque que le navigateur ouvre une deuxième page Internet explorer je perd la main. Je n’ai plus du tout la main sur la nouvelle fenêtre qui vient de s’ouvrir.

Je créer une fenêtre internet explorer via l’activeX disponible avec windev (internetexplorer.application), j’y réalise quelques recherche afin d’y trouver un lien.
Quand j’ai trouvé ce lien je clic dessus et il m’ouvre une autre fenêtre contenant l’accès à l’application web voulu.
Mon problème : comment faire pour que je puisse manipuler cette nouvelle fenêtre comme la première (avec les commande de l’activeX)

Je précise juste que je n’utilise pas l’objet ActiveX de windev (celui que l’on colle sur une fenetre), mais uniquement du code dans un bouton.

Code :

// création de l'objet page internet
oInternet est un objet Automation "InternetExplorer.Application"

// chargement de la page internet dans l'objet
oInternet>>Navigate("http://www.MonSiteIntranet.com/")

//Attente que la page soit fini de chargée
TANTQUE oInternet>>Busy
Multitâche(10)
FIN
// Affichage de la page vrai oui // faux invisible
oInternet>>visible = Vrai

//////////////////////////////////////////////////////////////////////// RECHERCHE LE LA FRAME
// chargement des frames
TAcceuil est un objet Automation dynamique = OInternet>>document>>Frames
// si des frames sont listable dans la page
SI TAcceuil <> Null ALORS
// parcours de toute les frames
POUR VARa = 1 A TAcceuil>>length-1
SI TAcceuil>>Frames(VARa)>>name = "principal" ALORS
// mémorisation de l’ID de la frame principale
VARPosFramePrincipal = VARa
FIN
FIN
FIN

//////////////////////////////////////////////////////////////////////// RECHERCHE DU LIEN DANS LA FRAME
// recuperation des liens URL de la frame principaletIndustriel est un objet Automation dynamique TAcceuil>>Frames(VARPosFramePrincipal)>>document>>getElementsbytagname("a") VarPosApplication 0
// si la position n'a pas ete trouve .. je boucle pour la trouvé
TANTQUE VarPosApplication = 0
POUR VARa = 1 A tIndustriel>>length-1
SI chaîneOccurrence(tIndustriel>>item(VARa)>>href,"229661,229674",SansCasse) = 1 ALORS // recherche du lien contenant « 229661,229674 »

VarPosApplication = VARa // mémorisation de la position du lien
FIN
FIN
FIN

////////////////////////////// MAINTENANT CA SE COMPLIQUE
////////////////////////////// enfin pour moi…

////////////////////////////// clic sur le lien contenant la chaine ////////////////////////////// « 229661,229674 »

tIndustriel>>item(VarPosApplication)>>Click

////////////////////////////// FIN DU CODE

Maintenant, je bloque. Le fait de cliquer sur ce lien m’ouvre un site contenant une application intranet.
Mon problème est que je n’arrive pas a reprendre la main sur cette fenêtre que je l’avait sur la fenêtre maitresse (celle qui m’a permis de la lancer)

Pour info le lien sur lequel je clic est de la sorte :
Href= "javascript:ouvrir_site_secu(229661,229674,"1010","645","1","1","1","1","0","0","0","0","1","1","0")"

J’utilise windev 12 et/ou 14 et le navigateur web est Internet Explorer v. 6.0.2900.2180.
je préfère préciser car ce sont mes contraintes entreprise.

Piste suivi sans resultat :
 - passage dans un activeX dans une fenêtre => meme resultat
 - HttpRequete : erreur retourner car il ne comprend pas le lien ("javascript:ouvrir_site_secu(229661,229674,"1010","645","1","1","1","1","0","0","0","0","1","1","0")"
)
- récupération du Handle de la fenetre qui s'ouvre : ok ; mais comment faire pour attribuer ce handle a une nouvelle fenetre ex : oNouvelObjet>>HWND(NumHandle) ne fonctionne pas...

Un grand merci déjà pour m'avoir lu.
Et toute ma gratitude si vous m'apporter un bout de réponse.

Antony F.

1 réponse

cetincig Messages postés 1 Date d'inscription dimanche 27 juin 2010 Statut Membre Dernière intervention 3 juillet 2010
3 juil. 2010 à 23:31
Rejoignez-nous