Voilà, mon code copie le contenu d'un fichier dans une edit :
-------------
char fil[LEN];
OPENFILENAME ofn;
ZeroMemory(&ofn, sizeof(OPENFILENAME));
ofn.lStructSize = sizeof(OPENFILENAME);
ofn.hwndOwner = hdlg; //handle de ton appli ou fenêtre
ofn.hInstance = NULL;
ofn.lpstrCustomFilter = NULL;
ofn.nMaxCustFilter = 0;
ofn.nFilterIndex = 0;
ofn.nMaxFile = MAX_PATH;
ofn.lpstrFileTitle = NULL;
ofn.lpstrTitle = NULL;
ofn.Flags = 0;
ofn.nFileOffset = 0;
ofn.nFileExtension = 0;
ofn.lCustData = 0L;
ofn.lpfnHook = NULL;
ofn.lpTemplateName = NULL;
ofn.lpstrFile = fil;
GetOpenFileName(&ofn);
FILE * fp = fopen(fil, "rb");
char * buf[4096];
char tmp[4096];
int nb_read;
while ((nb_read=fread(buf,1,4096,fp))>0){
strcat(tmp, (const char *)buf);
}
fclose(fp);
SetDlgItemText(hdlg,IDC_EDIT1,tmp);
memset(tmp, 0, sizeof(tmp));
memset(buf, 0, sizeof(buf));
----------------
Déjà quand au début du edit se place tout le temps cette chaine : "^ôwÿÿÿÿ7ôw.Ùåw"
je ne sais pas pourquoi.
Ensuite quand je selectionne un autre fichier à charger dans le edit, ça me met le contenu du fichier précédent plus le nouvea, les deux à la suite, je pensais portant avoir nettoyé le tablea avec memset() ! :s
Merci de m'éclairer :)