Unicode编码下用RegQueryValueEx和RegSetValueEx读写注册表乱码问题
我的解决方法是:(实测可行)
CString temp =_T("c:\\windows\\internet.exe"); // 可以包含中文,不会乱码
int len = temp.GetLength(); // 不含结尾符 '\0'
::RegSetValueEx(hKey, _T("key name"), NULL, REG_SZ, (BYTE*)(LPCTSTR)temp, 2 * len + 1)); // 记得加 '\0' 的长度
网友评论