读书人

熟悉注册表编程的入

发布时间: 2012-01-30 21:15:58 作者: rapoo

熟悉注册表编程的高手进入
ckeyitem=creglist.Mid(pos1+2,pos2-pos1-4+1);
long iresult=0;
iresult=reg.Open(HKEY_LOCAL_MACHINE,ckeyitem);
if(ERROR_SUCCESS!=iresult)
{
MessageBox( "打开失败 ");
}
lpkeyvalue=ckeyvalue;
iresult=reg.DeleteSubKey(ckeyvalue);
iresult=reg.DeleteValue(ckeyvalue);
if(ERROR_SUCCESS!=iresult)
{
MessageBox( "删除失败 ");
}
reg.Close();


ckeyitem是 software//Microsoft//Windows//CurrentVersion//Run

执行 打开注册表一句时报“打开失败”,并且iresult返回值为2

然而奇怪的是,我当前用户是管理员,

当我手动打开注册表编辑器,手动双击点开这个键值后再运行此程序

不但iresult为0,打开通过了,而且还能顺利执行下面的删除语句

请问为什么??



[解决办法]
MSDN中有详细的说明和例子

读书人网 >VC/MFC

热点推荐