OVH Cloud OVH Cloud

Besoin d'éclaircissement sur le fonctionnement d'IE

1 réponse
Avatar
Michel Claveau - abstraction méta-galactique non triviale en fuite perpétuelle.
Bonsoir !


Il m'arrive un truc que je ne parviens pas à m'expliquer.


Voilà déjà le principe du fonctionnement :

- Dans IE, j'ai mis en place des fonctions qui interceptent quelques
évènements (onblur, onmousedown, onfocus, ...)
- Dans les fonctions, le code appelle un serveur COM, qui remplit une file
d'instructions à exécuter (par IE) au retour.
- Une fonction permet la récupération, et le traitement des instructions, de
la file.

Cela fonctionne. Et j'ai vérifié, notamment, que les routines du serveur COM
mettent bien IE en attente (j'ai mis une attente de 10 secondes),


Mais, et c'est l'origine de ma question :

Lorsque je travaille sur l'évènement onmousedown (un bête clic, quoi), les
instructions ne sont exécutées dans l'ordre de la file. Par exemple, la
première instruction est exécutée après la troisième !

En essayant d'analyser plus en détail (et ça n'a pas été facile !), je me
suis aperçu que d'autres évènements se déclenchaient, après le retour
d'appel au serveur COM, mais AVANT la fin de la fonction.

Du coup, je ne comprend pas la logique du fonctionnement, lors d'évènements
multiples. Si je pouvais avoir quelques précisions, ce serait sympa. Merci
d'avance.

Je cherche notamment à savoir :
- comment se propage un évènement, notamment dans le cas d'objets
imbriqués ?
- quelle est la hiérarchie d'interception (de traitement) des différents
évènements ?
- cette hiérarchie varie-t'elle selon les (types d') objets et leur
imbrication ?
- quelles sont les instructions qui "autorisent" le déclenchement du
traitement d'un évènement ? Je pensais (naïvement ?) que seuls les appels
et fins de fonctions étaient utilisés.

Subsidiairement, j'ai une autre petite question : je ne trouve pas
d'indication sur le niveau d'isolation des fonctions dans IE. Qui aurait
des infos la-dessus ? Par exemple, si une même fonction est appelée d'après
un évènement onmousedown et onfocus, y a t'il un risque que cette fonction
soit appelée sans que l'appel précédent ne soit terminé ?


Dans l'espoir d'une réponse,

Bonne soirée
--
Michel Claveau

1 réponse

Avatar
Jceel
"Michel Claveau - abstraction méta-galactique non triviale en fuite
perpétuelle." a écrit dans le message de
news:
Bonsoir !


Il m'arrive un truc que je ne parviens pas à m'expliquer.


Voilà déjà le principe du fonctionnement :

- Dans IE, j'ai mis en place des fonctions qui interceptent quelques
évènements (onblur, onmousedown, onfocus, ...)
- Dans les fonctions, le code appelle un serveur COM, qui remplit une file
d'instructions à exécuter (par IE) au retour.
- Une fonction permet la récupération, et le traitement des instructions,
de
la file.

Cela fonctionne. Et j'ai vérifié, notamment, que les routines du serveur
COM
mettent bien IE en attente (j'ai mis une attente de 10 secondes),


Mais, et c'est l'origine de ma question :

Lorsque je travaille sur l'évènement onmousedown (un bête clic, quoi), les
instructions ne sont exécutées dans l'ordre de la file. Par exemple, la
première instruction est exécutée après la troisième !

En essayant d'analyser plus en détail (et ça n'a pas été facile !), je me
suis aperçu que d'autres évènements se déclenchaient, après le retour
d'appel au serveur COM, mais AVANT la fin de la fonction.

Du coup, je ne comprend pas la logique du fonctionnement, lors
d'évènements
multiples. Si je pouvais avoir quelques précisions, ce serait sympa. Merci
d'avance.

Je cherche notamment à savoir :
- comment se propage un évènement, notamment dans le cas d'objets
imbriqués ?
- quelle est la hiérarchie d'interception (de traitement) des différents
évènements ?
- cette hiérarchie varie-t'elle selon les (types d') objets et leur
imbrication ?
- quelles sont les instructions qui "autorisent" le déclenchement du
traitement d'un évènement ? Je pensais (naïvement ?) que seuls les appels
et fins de fonctions étaient utilisés.

Subsidiairement, j'ai une autre petite question : je ne trouve pas
d'indication sur le niveau d'isolation des fonctions dans IE. Qui aurait
des infos la-dessus ? Par exemple, si une même fonction est appelée
d'après
un évènement onmousedown et onfocus, y a t'il un risque que cette fonction
soit appelée sans que l'appel précédent ne soit terminé ?


Dans l'espoir d'une réponse,

Bonne soirée
--
Michel Claveau



bonjour Michel tu devrais plutot demander à Sergio sur winpasapas.org
--
@++++Jceel

En vérité je te le dis mais sous O E
internaute indécis pour le HacheuTeuMeuLeu
seul le click droit Control+F deux
la lumière t'apportera C'est ce qu'il y a de mieux
netevangile..selon Jceel.livre du windows.psaume alt-255..verset ÿp
Jceel http://jceel.free.fr l'hyper du gratuit du net
Founding Chairman of the International Pebkac Busters Company