cs_rescator68
Messages postés24Date d'inscriptiondimanche 13 juillet 2003StatutMembreDernière intervention 5 novembre 2011
-
18 janv. 2009 à 11:38
cs_rescator68
Messages postés24Date d'inscriptiondimanche 13 juillet 2003StatutMembreDernière intervention 5 novembre 2011
-
18 janv. 2009 à 18:13
Bonjour,
voila mon problème du jour....
je récupère des infos par un port com ( provenant d'un automate)
celui-ci me donne des infos d'ouverture et de fermeture de contact
>>123 debut contact toto
>>123 fin contact toto
où 123 est le numéro du contact....
j'ai 1000 contacts sur cet automate....
je récupère donc toutes ces infos au fil de l'eau via le port série ( ca fonctionne) et je remplis un fichier texte qui sert de log ( ce fonctionne aussi depuis longtemps)
Maintenant, il faut que je sache à un instant "T" Quels sont les contacts restés ouverts...
du style, je clique sur un bouton, et le prog doit me dire
>>123 ouvert
>>254 ouvert
>>542 ouvert
voila.... si qq avait une idée. je le remercie d'avance
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 18 janv. 2009 à 13:00
Salut
1000 contacts sur 3 digits, c'est 0 à 999 ?
La seule solution est de mémoriser l'état des contacts ouverts.
Pour cela, crée une varaible tableau, exemple
Dim mesContacts(0 To 999) As Boolean
Ensuite, à chaque fois que tu vois passer "debut", tu mets la variable associée au contact à True, sans oublier de remettre à False quand tu vois passer "fin".
Pour afficher les contacts actuellement ouverts (ou fermés), il te suffit de faire une boucle For-Next de chaque variable et d'écrire "ouvert" à chaque fois que tu vois True dedans (ou "fermé" si False)
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 18 janv. 2009 à 13:03
Si l'instant t est le moment ou tu clique sur le bouton, il te suffit au fil de l'eau de mémoriser l'état de chaque contact, tu saura ainsi "en temps réel" l'état de tes contacts.
Si par contre, l'instant t peut être quelques minutes ou quelques heures auparavant, il te faudra reconstruire à partir du log, à condition toutefois d'avoir horodaté les informations du log. Ou alors faire à coté un second log horodaté avec le nouvel état à chaque reception d'un message de l'automate.