Minuterie

Signaler
Messages postés
172
Date d'inscription
lundi 10 octobre 2005
Statut
Membre
Dernière intervention
16 mai 2011
-
Messages postés
14761
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
21 janvier 2021
-
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

Messages postés
14761
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
21 janvier 2021
151
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