cs_andrealphus
Messages postés46Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention21 décembre 2004
-
4 juin 2003 à 10:05
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019
-
4 juin 2003 à 13:23
[mailto:david.leguillon@voila.fr 4ndr&@lphu$]
Voilà mon code :
LRESULT CALLBACK dialogProc4(HWND hDlg, UINT Umess, WPARAM wParamD, LPARAM lParamD)
{
int m_IdTimer=0; // ID du SetTimer ds EnrTimerProc
char buff[8];
char ID_machine[11]="ID_";
case IDC_ACTION:
{GetWindowText(hDlg,buff,strlen(buff));
strcat(ID_machine,buff);
regNbrRead(&m_IdTimer, CLE_MACHINE, ID_machine);
KillTimer(0, m_IdTimer);}
EndDialog(hDlg,IDC_ACTION);
break;
}
break;
default:
return (FALSE);
}
return (TRUE);
}
/**********************************************************
procédure pour SetTimer de dialogProc4, on écrit ds la base
***********************************************************/
void CALLBACK ENRTimerProc(HWND hEnr, UINT uMsg, UINT idEvent, DWORD dwTime)
{
char buff[8]; //buffer pour récupérer le nom de la machine ds dialogbox
HWND hDlg=(HWND) idEvent;
GetWindowText(hDlg, buff, strlen(buff));
base_de_donnees(hDlg,buff);
}
/*********************************************/
Rappel:
pou écrire et lire ds la base de registre:
regNbrWrite(int nombre,char *chemin_clé,char *nom_clé);
regNbrRead(int *nombre,char *chemin_clé, char *nom_clé);
LE PROBLEME EST QUE JE N'AZRRIVE PAS A TUER LE TIMER ????
cs_andrealphus
Messages postés46Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention21 décembre 2004 4 juin 2003 à 10:26
[mailto:david.leguillon@voila.fr 4ndr&@lphu$]
et non !
ca marche toujours pas...(d'ailleurs je ne vois pas ce que ca changer personnellement..)
mais bon de toute façon c'est pas CA...
une autre idée ?? t'as compris ce que je fais ou tu veux que je t'explique un peu...(lol, a mon avis t'as compris vu que c'est pour une partie tes fonctions)
@+
theneoiceman
Messages postés78Date d'inscriptionlundi 14 avril 2003StatutMembreDernière intervention23 avril 2010 4 juin 2003 à 10:38
-------------------------------
Réponse au message :
-------------------------------
> tu dois changer un argument dans ta fonction killtimer .
> Ecris ceci a la place :
> KillTimer(hDlg, m_IdTimer);
>
> car la fonction KillTimer doit utiliser le même HWND que celui passsé dans la fonction setTimer !
> Voila...
> :big)
Une dernière chose : n'oublie pas de rendre globale la variable m_IdTimer comme l'a dit Brunews sinon t'es pas prêt de l'arrêter ce Timer !
Vous n’avez pas trouvé la réponse que vous recherchez ?
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 4 juin 2003 à 13:23
Alors j'insiste, si m_IdTimer reste comme tu l'as mis, sa valeur est perdue donc invalide pour KillTimer.
Ensuite je n'avais pas vu un autre truc:
SetTimer(hDlg, ...) donc ton timer est associé a une fenetre, il faut donc KillTimer(hDlg, m_IdTimer);
BruNews, ciao...