RegSetValueEx Устанавливает данные и введите указанного значения в разделе реестра.
Он просто изменит тип сохраненного значения на REG_SZ и установит указанное вами значение, он не будет проверять, какое значение или тип было раньше. Поэтому, когда вы прочитаете значение, вы получите последнее значение, которое вы там установили. Нет такого понятия, как «неверный» REG_SZ.
Также забудьте о «значении по умолчанию для ключа». Это не то, что вы думаете. Это , а не значение, которое API вернет в случае сбоя, это просто причудливое имя для анонимного значения.