OVH Cloud OVH Cloud

Gestion des évènements

3 réponses
Avatar
Jean Saint Jalmes
Bonjour,

Certains =E9v=E8nements programm=E9s dans une appli VB6.0=20
peuvent-ils =EAtre masqu=E9s par une proc=E9dure un peu longue=20
(ou d'autres =E9v=E8nements) ?

Autrement dit, est-on certain de capter la totalit=E9 des=20
=E9v=E8nements qui surviennent pendant l'ex=E9cution de l'appli=20
VB.

Merci pour vos r=E9ponses

Jean

3 réponses

Avatar
jean-marc
"Jean Saint Jalmes" wrote in message
news:3a2e01c4a097$12ac63d0$
Bonjour,
Certains évènements programmés dans une appli VB6.0
peuvent-ils être masqués par une procédure un peu longue
(ou d'autres évènements) ?
Autrement dit, est-on certain de capter la totalité des
évènements qui surviennent pendant l'exécution de l'appli
VB.



Hello,

oui tu es sur de tout recevoir. Un amusant moyen pour s'en convaincre:
tu mets 2 sockets sur ta form.

Private Sub Command1_Click()
Sleep (10000)
MsgBox "fini de dormir"
End Sub

Private Sub Form_Load()

Winsock2.LocalPort = 5123
Winsock1.LocalPort = 5123
Winsock1.Listen
End Sub

Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
Winsock2.Accept (requestID)
Winsock2.SendData "je suis la " & vbCrLf
End Sub

Puis:
1/ tu lances le programme

2/ tu ouvres une session dos
tu tapes: "TELNET LOCALHOST 5123"
SANS taper ENTER
3/ tu cliques sur le bouton de commande
4/ tu tapes Enter dans ta fenetre Dos.

Le programme est bloqué pendant 10 secondes (dans le Sleep) de command1

Puis au bout de ces 10 secondes, tu vas recevoir le message "je suis la"
dans ta fenetre Dos.

C'est la preuve que l evenement Winsock1_ConnectionRequest a bien été
appelé, et qu'il s'est déclenché et exécuté, après le très long Sleep.

--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
Avatar
jean-marc
J'avais oublié: il faut ajouter la déclaration pour Sleep:

Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Avatar
le_troll
Salut,

Oui le code peut shunter un évènement, si tu attends un click dans
l'objet 2/3 et que dans l'objet 1/3 tu lui dit d'aller à l'objet 3/3, tu
peux attendre longtemps ta procédure qui gère l'évènement click de l'objet
2/3....

De façon générale, suivant le déroulement du programme et le code, tous
les évènements ne sons pas systématiquement capturés...


--
Merci, @+, bye, Joe
troll75 AROBASE iFrance POINT com
------------------------------------------
Le_Troll, éleveur de Trolls depuis César, qui disait:
Avec une hache, celui qui tient le manche a toujours raison !


"Jean Saint Jalmes" a écrit dans le
message de news:3a2e01c4a097$12ac63d0$
Bonjour,

Certains évènements programmés dans une appli VB6.0
peuvent-ils être masqués par une procédure un peu longue
(ou d'autres évènements) ?

Autrement dit, est-on certain de capter la totalité des
évènements qui surviennent pendant l'exécution de l'appli
VB.

Merci pour vos réponses

Jean