Tache de fond (win32)

Signaler
Messages postés
584
Date d'inscription
mardi 26 novembre 2002
Statut
Membre
Dernière intervention
29 mai 2015
-
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
-
Bonjour,
j'ai l'habitude des MFC mais j'essaie Win32 (c'est BruNews qui va être content! ;) ).
Je voudrais lancer une fonction toute les secondes (j'utilise SetTimer) mais à part en créant une fenêtre mon appli s'arrete immédiatement.

J'ai essayé avec un while(1) mais évidemment ça bouffe toutes les ressources...

Du coup j'ai fait une fenêtre qui se ShowWindow(SW_HIDE) à l'InitDialog mais bon c'est pas ce que j'appelle de la belle prog.... :dissapprove)

Quelqu'un peut-il me dire comment je peux faire ?

Merci

3 réponses

Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
26
Tres bien !!!
Regarde dans mes sources exemple de fonction callback pour ton timer, aucun besoin de hwnd pour initialiser le timer.
BruNews, ciao...
Messages postés
584
Date d'inscription
mardi 26 novembre 2002
Statut
Membre
Dernière intervention
29 mai 2015

Merci mais le pb n'est pas que j'ai besoin d'un hwnd, c'est juste que je ne sais pas comment faire pour ne pas que le prog s'arrete immédiatement

Mais finalement j'ai trouvé dans tes sources, je fais ça:

MSG msg;
while(GetMessage(&msg, 0, 0, 0)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}

C'est bien ça qu'il faut faire ? (en tous cas ça marche)
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
26
C'est la pompe a messages, c'est par la que le systeme communique avec ton prog, tout bon.
BruNews, ciao...