C++读写注册表的问题

UNICODE态下,在读取注册表的时候有时会只获得一个字符,是因为RegQueryValueEx的参数虽然是LPBYTE(unsigned char *),但是读出来的数据却是按照WIDECHAR形式读出的,所以可以直接把LPBYTE强制转换成TCHAR,再加以利用就可以了.

写入的时候,如果以TCHAR形式写入,则需要用memcpy(data_to_be_write_LPBYTE, data_wide_char_LPTCHAR, wcslen(data_wide_char_LPTCHAR));来拷贝数据,然后再用LPBYTE的数据写入.

尤其是对于有中文的情况,以上的读写方法都可以正常实现.

posted on 2013-06-06 16:19  horane.jo  阅读(455)  评论(0)    收藏  举报

导航