Tout d'abord il faut savoir que les valeurs de type REG_BINARY peuvent contenir des données dont l'étendue est variable (de 0 octet à beaucoup d'octets). Donc pour récupérer une valeur de ce type, il faut d'abord récupérer la taille de la valeur (1), allouer de la mémoire (2) et récupérer les données (3) :
1. Récupérer les infos de la valeur DWord dwType; DWord dwSize; RegQueryValueEx( hKey, ValueName, NULL, &dwType, NULL, &dwSize );
2. Allouer la mémoire char *ptr = (char*)malloc( dwSize );