[2005 PE] Timer en arrière plan [Résolu]

Messages postés
346
Date d'inscription
jeudi 1 mai 2003
Dernière intervention
4 avril 2011
- - Dernière réponse : ni69
Messages postés
1529
Date d'inscription
samedi 12 juin 2004
Dernière intervention
5 juillet 2010
- 28 sept. 2005 à 14:13
Bonjour,

J'ai une application qui a un timer qui scanne le port COM (qui ne touche pas au graphisme de mon application) toutes les 3 secondes.

C cool, seulement, quand je déplace ma fenetre ou que je fait des certains trucs (comme un popup menu par exemple, ...), ça bloque si le timer fait sa boucle à ce moment.

Comment faire pour que le timer n'ai pas d'incidence sur mon application ?

Merci d'avance.

David, à VERSAILLES
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
Messages postés
1529
Date d'inscription
samedi 12 juin 2004
Dernière intervention
5 juillet 2010
9
3
Merci
regarde ici :

http://phidels.com/php/index.php3?page=../php/pagetelechargementzip.php3&id=416

@+

Nico { http://www.ni69.new.fr/ }




<hr size="2" width="100%">

N'oubliez pas de cliquer sur Réponse Acceptée lorsque la réponse vous convient !

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 119 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ni69
Messages postés
1651
Date d'inscription
samedi 10 juillet 2004
Dernière intervention
25 juillet 2014
7
3
Merci
pour information Tcomport utilise des threads à l'envoi d'une chaine

Il vaut mieux utiliser la fonction WriteStrAsync(const Str: string; var
AsyncPtr: PAsync); qui n'est pas bloquante. plutot que la fonction
WriteStr(const Str: string) qui attend la fin de transmition.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 119 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jlen100
Messages postés
1529
Date d'inscription
samedi 12 juin 2004
Dernière intervention
5 juillet 2010
9
0
Merci
Essaye d'incorporer des Application.ProcessMessages dans le code du timer...

@+

Nico { http://www.ni69.new.fr/ }




<hr size="2" width="100%">

N'oubliez pas de cliquer sur Réponse Acceptée lorsque la réponse vous convient !
Commenter la réponse de ni69
Messages postés
1651
Date d'inscription
samedi 10 juillet 2004
Dernière intervention
25 juillet 2014
7
0
Merci
salut,

tu n'iadiques pas par quel composant tu accede au port COM mais
j'ai eu ce genre de probleme dans une application. ça arrivais quand je
dectectais une trame partielle et que j'attendais la fin de trame dans
le timer: par exemple je recevais les 5 premiers caracteres et
j'attendais les 5 suivants. j'ai résolu le problème en ne lisant que
les caracteres effectivement reçus et en reportant la lecture des
suivants à la scrutation suivante.

Je ne sais pas si c'et ton cas mais ça peut être une exiplication.
Commenter la réponse de jlen100
Messages postés
346
Date d'inscription
jeudi 1 mai 2003
Dernière intervention
4 avril 2011
1
0
Merci
Salut ni69 et jlen100,

Je met déja des Application.ProcessMessages un peu partout (un peu trop d'ailleurs à mon gout).

J'accède au port COM par le composant tcomport.
Mais mon problème ne vient pas de l'échange des données car je ne fait qu'envoyer une commande toutes les 3 secondes et ma procédure est largement finie (et correctement) avant qu'il en relance une autre.

Je désire un peu lancer genre une pseudo "2ème instance", un autre thread si je puis me permettre de ce timer, qui n'ait pas d'incidence sur mon prog.

David, à VERSAILLES
Commenter la réponse de cs_nitrique
Messages postés
1529
Date d'inscription
samedi 12 juin 2004
Dernière intervention
5 juillet 2010
9
0
Merci
Tu peux justement utiliser les threads

@+

Nico { http://www.ni69.new.fr/ }




<hr size="2" width="100%">

N'oubliez pas de cliquer sur Réponse Acceptée lorsque la réponse vous convient !
Commenter la réponse de ni69
Messages postés
346
Date d'inscription
jeudi 1 mai 2003
Dernière intervention
4 avril 2011
1
0
Merci
Bin en fait heu....

Comment ça marche les threads ?

David, à VERSAILLES
Commenter la réponse de cs_nitrique
Messages postés
1529
Date d'inscription
samedi 12 juin 2004
Dernière intervention
5 juillet 2010
9
0
Merci
Très juste jlen100

@+

Nico { http://www.ni69.new.fr/ }




<hr size="2" width="100%">

N'oubliez pas de cliquer sur Réponse Acceptée lorsque la réponse vous convient !
Commenter la réponse de ni69

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.