Bonjour à tous !
Je viens poster parce que j'ai un petit problème, j'essaye de faire une fonction de debug qui marche comme un printf() et qui affiche le résultat dans un editbox (IDC_DEBUG) seulement elle marche, mais au bout de 20 ou 30 appel a la fonction ca crash, ca doit ètre une fuite de mémoire mais j'ai tout essayé et je trouve pas... :(
Je suis pas encore très expérimenté donc si quelqu'un pouvait m'aider ce serait sympa !
======================================
void debug(char* format, ...)
{
int len = GetWindowTextLength(GetDlgItem(hDlg, IDC_DEBUG));
if(len>2000) len = 1000; // limiter le nb de caractères affichés dans la fenetre
char* z = new char[len+1+1028];
char* t = new char[1024];
memset(t, 0, 1024);
GetDlgItemText(hDlg, IDC_DEBUG, z, len+1);
va_list ap;
va_start(ap, format);
vsprintf(t, format, ap);
va_end(ap);
strcat(z, t);
strcat(z,"\r\n");
SetDlgItemText(hDlg, IDC_DEBUG, z);
SendDlgItemMessage(hDlg, IDC_DEBUG, WM_VSCROLL, SB_BOTTOM, 0);
delete[] t;
delete[] z;
}
merci d'avance !