RegEnumValue在MFC的Realse版本下,返回乱码
如下代码,在Debug版本下可以良好的执行,但是在Release中,第一个返回值却成了乱码,请问这是什么原因呢?哪位大侠能给个解决方案吗?
long CMendCppDlg::regValue(HKEY Root,CString subKey){
DWORD dwIndex=0,dwName=255;
DWORD dwData,Type;
char ssName[255];
UCHAR ssValue[255];
long op;
HKEY hKey;
int i=0;
op=RegOpenKeyEx(Root,subKey,0,KEY_ALL_ACCESS,&hKey);
do{
op=RegEnumValue(hKey,dwIndex++,ssName,&dwName,0,&Type,(BYTE *)ssValue,&dwData);
if(op==ERROR_SUCCESS||op==ERROR_MORE_DATA)
LR->LinkList::InsertList(dwIndex,Root,subKey,ssName,ssValue);
dwName=255;
i++;
}
while(op==ERROR_SUCCESS||op==ERROR_MORE_DATA);
RegCloseKey(hKey);
return i;
}