[求助]怎样使用RegEnumValue列出某个键下的所有值
我想在一个列表控件中列出"开机时自动运行的程序"(即HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Run下的所有我值)
但是在我的控件中只能显示一部分信息,不能完全显示,我的代码如下:
HKEY hKey;
LPCTSTR strKey="Software\\Microsoft\\Windows\\CurrentVersion\\Run";
if(::RegOpenKeyEx(HKEY_LOCAL_MACHINE,strKey,0,KEY_QUERY_VALUE,&hKey)==ERROR_SUCCESS)
{
DWORD size,type;
type=REG_SZ;
size=200;
char data[200];
int i=0;
while(::RegEnumValue(hKey,i,data,&size,0,&type,NULL,NULL)!=ERROR_NO_MORE_ITEMS)
{
m_list.InsertItem(i,data);
char data1[200];
size=sizeof(data1);
if(::RegQueryValueEx(hKey,data,0,&type,(BYTE*)data1,&size)==ERROR_SUCCESS)
m_list.SetItemText(i,1,data1);
i++;
}
}
哪位大侠帮我解决一下,谢谢哦!~~~