[WD9] Equivalent fonction Temporisation

Le
Eric Laurent
Bonjour,

Quelle fonction API puis-je employer sous Windev 9 pour remplacer la
fonction Multitâche() et générer l'équivalent de la fonction
Temporisation() de Windev 10 et 11 ?

- Pourquoi ai-je besoin de cette fonction ?
1) Parce que avec le code suivant sous Windev 9, 10 ou 11:

TANTQUE PAS FinDuProgramme
PoolingLecteur
Multitâche(-1)
FIN
.
L'application occupe 98% de la CPU

Alors qu'avec ce code sous Windev 10 ou 11,

TANTQUE PAS FinDuProgramme
PoolingLecteur
Temporisation(0,tempoSourisEtClavier)
FIN
.
L'application occupe +-1% de la CPU

2)Mon programme doit impérativement être en Windev 9 car il utilise
d'autres modules ecrits dans cette version.

Merci d'avance.

--
Eric Laurent
nospam.laurent.systel@wanadoo.fr
(enlever nospam.)
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Eric Laurent
Le #14665791
C'est bon, ne cherchez plus, j'ai trouvé comment procéder.
J'utilise l'API GetMessage.
Si vous êtes intéressé par son utilisation, écrivez-moi en privé, je
vous transmetrai les sources.

--
Eric Laurent

(enlever nospam.)
Pierre BOUSQUET
Le #14665771
je veux bien

Eric Laurent avait soumis l'idée :
C'est bon, ne cherchez plus, j'ai trouvé comment procéder.
J'utilise l'API GetMessage.
Si vous êtes intéressé par son utilisation, écrivez-moi en privé, je vous
transmetrai les sources.



--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
//
Le #14665731
Il se trouve que Eric Laurent a formulé :
C'est bon, ne cherchez plus, j'ai trouvé comment procéder.
J'utilise l'API GetMessage.
Si vous êtes intéressé par son utilisation, écrivez-moi en privé, je vous
transmetrai les sources.



Tu as posé une question en public, cela aurait été bien que ta
"trouvaille" soit également postée en public...
regis.scotto
Le #14663361
Salut Eric, Salut a tous,

[le Thu, 01 Mar 2007 14:29:48 +0100]
[dans "fr.comp.developpement.agl.windev"]
[le message ayant pour sujet : "Re: [WD9] Equivalent fonction
Temporisation"]
[Eric Laurent
C'est bon, ne cherchez plus, j'ai trouvé comment procéder.
J'utilise l'API GetMessage.
Si vous êtes intéressé par son utilisation, écrivez-moi en privé, je
vous transmetrai les sources.



Et pourquoi pas en faire beneficier tout le monde, c'est si secret que
cela ? :-(

Bien amicalement,

Regis SCOTTO.

--
http://blog.bonifacio.com/
Eric Laurent
Le #14663301
Je ne pensais pas que cela interessait quelqu'un car je n'avais aucune
réponse à ma question (d'ailleurs je n'ai pratiquement jamais de
réponse aux questions que je pose).
Mais devant tant de demandes, voici la méthode à utiliser:

1) Mettre dans le code d'initialisation du projet

MSG est une structure
hwnd est un entier
GMessage est un entier sans signe
wParam est un entier
lParam est un entier
time est un entier
pt est un entier
FIN
StrMes est un MSG


2)Créer la procédure globale Temporisation

PROCEDURE Temporisation()
RetourFonction est booléen
lpMsg est un entier=&StrMes
hWnd est un entier=Handle()
wMsgFilterMin est un entier sans signe=0
wMsgFilterMax est un entier sans signe=0

RetourFonction=API("USER32","GetMessageA",lpMsg,hWnd,wMsgFilterMin,wMsgFilterMax)
SI RetourFonction=Vrai ALORS
RetourFonction=API("USER32","TranslateMessage",lpMsg)
RetourFonction=API("USER32","DispatchMessageA",lpMsg)
FIN


3) Il ne reste plus qu'à remplacer dans le code Multitâche(-1) par
Temporisation()


Cordialement,

--
Eric Laurent

(enlever nospam.)
Romain PETIT
Le #14663281
Dans son message précédent, Eric Laurent a écrit :
Bonjour,

Quelle fonction API puis-je employer sous Windev 9 pour remplacer la fonction
Multitâche() et générer l'équivalent de la fonction Temporisation() de Windev
10 et 11 ?

- Pourquoi ai-je besoin de cette fonction ?
1) Parce que avec le code suivant sous Windev 9, 10 ou 11:
......
TANTQUE PAS FinDuProgramme
PoolingLecteur
Multitâche(-1)
FIN
.......
L'application occupe 98% de la CPU



Bizarre... jamais eu ce problème de CPU avec WD7.5 et le multitache...
As-tu essayé un Multitache() (sans temporisation) ?

Un MultitacheRepeint() pouvait-il faire l'affaire sinon ?

A+

--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Eric Laurent
Le #14663271
Romain PETIT a exprimé avec précision :

Bizarre... jamais eu ce problème de CPU avec WD7.5 et le multitache...
As-tu essayé un Multitache() (sans temporisation) ?

Un MultitacheRepeint() pouvait-il faire l'affaire sinon ?



Bien sur j'ai essayé et ça ne fonctionne pas.

--
Eric Laurent

(enlever nospam.)
Publicité
Poster une réponse
Anonyme