//利用注册表枚举函数枚举注册表
HKEY whKey=NULL,h=NULL;
char wstr[MAX_PATH];
DWORD num=sizeof(wstr),index=0,rc1;
rc1=::RegOpenKeyEx(HKEY_CURRENT_USER,"Printers",0,KEY_ALL_ACCESS,&whKey);
if(rc1==ERROR_SUCCESS)
{
//这里只输出一层。想全部输出则需要递归.即定义一个函数,wstr做参数。
while(RegEnumKeyEx(whKey,index,wstr,&num,NULL,NULL,NULL,NULL)==0)
{
//枚举键值
cout<<"Number of index="<<index<<endl;
cout<<wstr<<endl;
index++;
num=MAX_PATH;
}
}
else
{
cout<<"Can't Open The Key!"<<endl;
}
RegCloseKey(whKey);
本文展示了一个使用C++进行注册表枚举的例子,通过调用Windows API函数RegOpenKeyEx和RegEnumKeyEx来遍历HKEY_CURRENT_USERPrinters键下的所有子项。
&spm=1001.2101.3001.5002&articleId=101929647&d=1&t=3&u=8a017dec6f7d4dc1829fd5c4f97ae7a2)
6257

被折叠的 条评论
为什么被折叠?



