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...
-------------------------------
Réponse au message :
-------------------------------
>
>
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)
> @+
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > m_IdTimer doit etre declare ailleurs que dans ta wndproc ou alors tu mets "static" devant, ce qui aura le meme effet.
> > BruNews, ciao...
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > >
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_";
> > >
> > > switch (Umess)
> > > {
> > > case WM_INITDIALOG:
> > > {SetWindowText(hDlg, machine_select);
> > > //carte_A1010(hDlg);
> > > m_IdTimer = SetTimer(hDlg, (UINT) hDlg, 5000, ENRTimerProc);
> > > char ID_machine[11]="ID_";
> > > strcat(ID_machine,machine_select);
> > > regNbrWrite(m_IdTimer, CLE_MACHINE, ID_machine);
> > > }
> > > break;
> > >
> > > case WM_COMMAND:
> > > switch(LOWORD(wParamD))
> > > {
> > >
> > > 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 ????
> > >
> > > Merci @+
> > >
> > >
> >
>