Что я делаю не так в этот раз? Следующий код всегда возвращает только 4 байта вместо всей строки:
HKEY hkey;
DWORD dwType, dwSize;
char keybuffer[512];
if(RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("software\\company name\\game name"), 0, KEY_READ, &hkey) == ERROR_SUCCESS){
dwType = REG_SZ;
dwSize = sizeof(keybuffer);
RegQueryValueEx(hkey, TEXT("setting"), NULL, &dwType, (PBYTE)&keybuffer, &dwSize);
RegCloseKey(hkey);
}
Даже если я изменю dwSize на что-либо, он все равно вернет 4 байта.
Редактировать: Видимо, не было ошибки в приведенном выше коде, но в другом месте -_-