Minuterie

gribouillex Messages postés 172 Date d'inscription lundi 10 octobre 2005 Statut Membre Dernière intervention 16 mai 2011 - 29 avril 2011 à 16:33
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 - 29 avril 2011 à 18:35
Bonjour, j'utilise une fonction de minuterie dont voici le code.

Sub Minuterie(Milliseconde As Long)
Dim Arret As Long
Arret = GetTickCount() + Milliseconde
Do While GetTickCount() < Arret
DoEvents
Loop
End Sub

Le problème c'est que GetTickCount n'est pas précis à la milliseconde (du moins c'est ce que j'ai lu à plusieurs endroits sur le web).

J'aurais besoin de la même fonction en utilisant QueryPerformanceCounter qui semble être une horloge haute résolution.

Je ne suis pas expert, donc allez-y mollo avec la technique, hein...

Merci d'avance

1 réponse

NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
29 avril 2011 à 18:35
Bonjour,

GetTickCount te retourne le nombre de millisecondes depuis le démarrage du PC.

Donc ton problème est plus dans le DoEvents qui libère le temps pour les autres processus, dans la pratique, ce délai peut être de 10 à 15ms (constaté sur une application pro), donc il ne faut pas faire de DoEvents et ce sera précis à la Milliseconde.

Mon site
0
Rejoignez-nous