Bonjour, dans un programme je dois énumérer toutes les clefs de HKEY_CURRENT_USER, j'ouvre donc cette clef, je récupère le nombre de subkeys (RegQueryInfoEx), ensuite j'énumère toutes les subkeys avec RegEnumKeyEx, dans mon HKEY_CURRENT_USER, il y'a 15 subkeys, la fonction RegEnumKeyEx devrait donc me les énumérer toutes, le problème étant qu'elle me renvoie un erreur de code 234 (ERROR_MORE_DATA) ce qui veut dire que le buffer recevant le nom de la clef est trop petit, pourtant j'ai beau l'agrandir, j'ai toujours la même erreur... si vous avez deja rencontré le meme pb...
Un exemple de "goto" judicieux au lieu d'accolades à rallonges:
if(RegQueryInfoKeyA(hKey, ...)) goto keyCLOSE;
.....
.....
keyCLOSE:
RegCloseKey(hKey);
éviterait d'oublier de fermer le handle de clé et aussi de mettre plusieurs appels RegCloseKey.