IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Manipulation de ie


Sujet :

WinDev

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Manipulation de ie
    Bonjour,

    J'avance dans ma manipulation de ie (balade dans les frames, récupération des données, écriture des données, clic sur un radio bouton, enregistrement de la source ...) mais j'ai un problème. La fenêtre ie lance une fenêtre fille dont je dois récupérer la source.
    Je manipule un site internet sécurisé.

    * quand j'essaye d'accéder à la fenêtre popup, j'ai une boite de dialogue qui indique que je ne suis plus connecté à l'application (la première fenêtre), car cela indique que j'accède depuis la deuxième (j'ai le nom de la form)
    * donc il n'est impossible d'enregistrer la page

    Initialisation :
    ie_explorer est un objet Automation "InternetExplorer.Application"
    ie_explorer_son est un objet Automation "InternetExplorer.Application" ==> pour la fenêtre popup et comme c'est la même automation je pense que le problème est là

    code d'accès à la fenêtre popup :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    	lg,ok sont des entiers
    	hwnd est un entier
    	lpstring est une chaîne fixe sur 255
    	titre_fenetre_ie est une chaîne
    	hwnd=AppelDLL32("User32","GetWindow",Handle(),2)
    	TANTQUE PAS hwnd=Handle()
    		Multitâche()
    		lg=AppelDLL32("User32","GetWindowTextLengthA",hwnd)
    		ok=AppelDLL32("User32","GetWindowTextA",hwnd,&lpstring,lg+1)
    		SI ok ALORS
    			titre_fenetre_ie=Gauche(lpstring,lg)
    			SI PAS ChaîneOccurrence(ChaîneFormate(titre_fenetre_ie),"cdc_titulaires.asp")=0 ALORS SORTIR
    		FIN
    		hwnd=AppelDLL32("User32","GetWindow",hwnd,2)
    		SI hwnd=0 ALORS SORTIR
    	FIN
    	ie_explorer_son>>navigate2(titre_fenetre_ie)
    	texte_source est une chaîne=ie_explorer_son>>document>>body>>outerhtml
    	SI PAS texte_source~="" ALORS fSauveTexte(valeur_fichier_titulaire,texte_source)
    	AppelDLL32("User32","CloseWindow",hwnd)
    Merci pour vos lumières,
    Vianney

  2. #2
    Membre averti Avatar de tunizar
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 573
    Points : 427
    Points
    427
    Par défaut
    Bonjour,
    WinDev inclut un champ HTML, il n y a pas besoin à mon avis de dialoguer avec le navigateur.

  3. #3
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    @tunizar :
    ce que veut faire vcaudron, c'est lancer un 'robot' qui va se connecter sur un site Web, et faire différentes actions ; il faut donc bien passer par de la programmation.

    @vcaudron
    Il y a un exemple 'Pilotage de IE' qui fait pas mal de choses, je pense que tu devrais t'en inspirer, même s'il est assez difficile à appréhender.
    Et de mémoire, cet exemple n'a jamais besoin de passer par AppelDll32(..)
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Bonjour,
    L'exemple de WinDev est très simpliste ...
    Ce que j'ai dû mettre en place pour gérer les FRAMES n'est pas inclus dans l'exemple.
    Et je n'ai pas vu de gestion de la fenêtre popup.

    Le passage par l'activex ne fonctionne pas non plus, j'ai aussi testé.

    Merci
    Vianney CAUDRON

  5. #5
    Membre éprouvé
    Inscrit en
    Avril 2008
    Messages
    1 129
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 1 129
    Points : 1 283
    Points
    1 283
    Par défaut
    Salut,

    L'activeX IE est ingérable surtout d'une version de iexplore à l'autre, et ne parlons pas de edge.

    Pourquoi ne pas essayer de tout gérer avec les requêtes HTTP?

Discussions similaires

  1. Manipulation des handle contexte
    Par rockbiker dans le forum DirectX
    Réponses: 1
    Dernier message: 09/05/2003, 18h51
  2. Manipuler JAVA et SSL ?
    Par jah dans le forum Sécurité
    Réponses: 6
    Dernier message: 05/05/2003, 00h30
  3. [VB6]manipuler les semaines en VB ?
    Par kamadji dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 02/05/2003, 12h33
  4. Réponses: 2
    Dernier message: 18/01/2003, 17h06
  5. Fonctions de manipulation des chaines et des dates
    Par Fares BELHAOUAS dans le forum Débuter
    Réponses: 3
    Dernier message: 09/11/2002, 22h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo