TWebbrowser - détection de modification de page [Résolu]

cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 3 janv. 2011 à 15:49 - Dernière réponse : cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention
- 5 janv. 2011 à 11:20
Bonjour à tous et bonne année,

Après le foie gras et le champagne une question pour bien chauffer
les neurones en ce début d'année :
J'utilise un TWebbrower que je connecte à un site web.
Jusqu'ici tout va bien...

Je souhaiterai détecter le moindre changement dans la page internet affichée, lors d'un clic sur telle ou telle action.
Précision, l'URL ne change pas et le code source de la page non
plus (pas d'un iota..)

J'ai pas mal cherché et fouillé, mais pour le moment rien de concret...
Vu aussi avec le TEmbeddedWeb..

L'idéal serait de pouvoir se servir d'un événement du composant.
Quelqu'un aurait-il été confronté à cette difficulté ?


cantador
Afficher la suite 

Votre réponse

15 réponses

Meilleure réponse
beckerich 309 Messages postés jeudi 29 septembre 2005Date d'inscription 17 septembre 2013 Dernière intervention - 3 janv. 2011 à 19:47
3
Merci
je ne peux pas t'aider pour le moment car j'ai des interférences du style TDivorce, TFinances, etc etc, et en plus un clqcier azerty...

Merci beckerich 3

codes-sources a aidé 82 internautes ce mois-ci

Commenter la réponse de beckerich
Meilleure réponse
Caribensila 2674 Messages postés jeudi 15 janvier 2004Date d'inscription 11 mai 2018 Dernière intervention - 3 janv. 2011 à 22:33
3
Merci
Salut,

Bonne année à tous deux (et surtout bon courage à Luc).

« Je souhaiterai détecter le moindre changement dans la page internet affichée, lors d'un clic sur telle ou telle action. »

A tout hasard, je suppose que tu as étudié OnCommandStateChange ?


_______________________________________
Soutenez Wikimédia France aujourd'hui : http://dons.wikimedia.fr

Merci Caribensila 3

codes-sources a aidé 82 internautes ce mois-ci

Commenter la réponse de Caribensila
Meilleure réponse
Utilisateur anonyme - 4 janv. 2011 à 09:48
3
Merci
Hop hop hop j'ai la solution


Regarde au niveau des champs d'en-tête et plus particulièrement If-Modified-Since et Last-Modified

Merci Utilisateur anonyme 3

codes-sources a aidé 82 internautes ce mois-ci

Commenter la réponse de Utilisateur anonyme
Meilleure réponse
Utilisateur anonyme - 4 janv. 2011 à 15:57
3
Merci
Mince j'ai oublié un truc : Le mieux est que tu te penches sur le protocole HTTP ainsi que les deux champs que je t'ai indiqué.

Pour le principe du champ If_Modified_Since regarde ici

Merci Utilisateur anonyme 3

codes-sources a aidé 82 internautes ce mois-ci

Commenter la réponse de Utilisateur anonyme
beckerich 309 Messages postés jeudi 29 septembre 2005Date d'inscription 17 septembre 2013 Dernière intervention - 3 janv. 2011 à 17:24
0
Merci
Bonjour,

peut-être touveras-tu ton bonheur ici :

events

Luc.
Commenter la réponse de beckerich
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 3 janv. 2011 à 19:35
0
Merci
Merci beckerich pour le coup de main

j'ai trouvé aussi cette page mais ça ne marche pas car je ne peux rien détecter (ni image, ni frame, ni id, ni objet..)
je teste celle-là en ce moment :

LIEN

cantador
Commenter la réponse de cs_cantador
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 4 janv. 2011 à 08:49
0
Merci
Bonjour Caribensila et bonne année,
et à cashmire aussi...

Pour mon souci, l'évènement OnCommandStateChange
suppose une modification de l'URL ( NAVIGATEFORWARD et NAVIGATEBACK)

mais dans mon cas, il n'y a que du
javascript derrière..

je me demande si je ne vais pas tenter de faire une petite capture d'écran, la scanner dans un thread et tester dès que ça bouge..
c'est lourd mais..

Qu'en penses-tu ?

cantador
Commenter la réponse de cs_cantador
Utilisateur anonyme - 4 janv. 2011 à 09:19
0
Merci
Salut,

Question con : A qui appartient ce site et le serveur ? (J'ai une ptite idée )
Commenter la réponse de Utilisateur anonyme
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 4 janv. 2011 à 09:55
0
Merci
Salut Francky23012301,

je dirai rien même sous la torture...
la méthode doit pouvoir s'appliquer partout.

cantador
Commenter la réponse de cs_cantador
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 4 janv. 2011 à 10:06
0
Merci
merci Francky23012301 pour l'info
mais cela suppose que l'on puisse atteindre ces fameux champs.
or dans mon cas, ces infos sont inaccessibles..

cantador
Commenter la réponse de cs_cantador
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 4 janv. 2011 à 10:07
0
Merci
que du javascript..


cantador
Commenter la réponse de cs_cantador
Utilisateur anonyme - 4 janv. 2011 à 13:39
0
Merci
"Ces infos sont inaccessibles " A cause du TWebBrowser ? du serveur ?
Commenter la réponse de Utilisateur anonyme
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 4 janv. 2011 à 15:00
0
Merci
du TWebbrowser, non puisqu'il est maîtrisable.
du serveur, je suppose..
mais peut-être sont elles simplement cachées dans le source
à moins qu'avec Indy (qur tu connais bien) on puisse faire autrement.

cantador
Commenter la réponse de cs_cantador
Utilisateur anonyme - 4 janv. 2011 à 15:55
0
Merci
Je te conseille de regarder plus en détail le protocole HTTP.

En fait il faut que :

*Ton serveur gère ce champ (Tous ne le font pas, même s'ils devraient).
*L'en-tête lors de l'envoie contienne ce champ (A voir si Indy et le WebBrowser permettent de le faire, sinon tu vas devoir utiliser winsock ).
*Il faut récupérer l'en-tête relative à la réponse reçue par le serveur et extraire la réponse correspondante à ce champ (et là aussi voir avec Indy et WebBrowser sinon winsock ).

Après dès qu'on touche au web, vu la jungle et le non respect des standards et normes, tu risques d'en baver.

Sinon ta méthode est aussi une alternative même si moins belle conceptuellement (Apres niveau perf ca sera aussi moins bon)
Commenter la réponse de Utilisateur anonyme
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 5 janv. 2011 à 11:20
0
Merci
merci Francky23012301,

j'ai maintenant tout ce qu'il faut pour travailler..

cantador
Commenter la réponse de cs_cantador

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.