VC删除注册表键值项

VC删除注册表键值项。


HKEY hkResult;
HKEY hKey=NULL;
    TCHAR lpFilename[MAX_PATH];

    int a=RegOpenKeyEx(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\Run",0,KEY_ENUMERATE_SUB_KEYS|KEY_QUERY_VALUE|KEY_SET_VALUE,&hKey);
    if(a==ERROR_SUCCESS)
    {
    int g=RegDeleteValue(hKey,"连接助手");     //删除一个键值项,切不可用其他函数
                                                                   //如RegDeleteKey或RegDeleteTree 及SHDeleteKey 函数
    RegCloseKey(hKey);                                                               //删除后释放

    if(g!=ERROR_SUCCESS)                                                         //执行失败获取错误信息
    {

    TCHAR* buffer;

    ::FormatMessage(
    FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
    NULL,
    g,
    0,
    ( LPTSTR )&buffer,
    0,
    NULL );

    ::MessageBox( NULL, buffer, NULL, 0 );                                            //输出错误信息
    LocalFree( buffer );
   }

           else 
         {
                MessageBox(NULL,TEXT("成功关闭"),TEXT("警告!"),MB_OK);
          }
    }   
else
{
MessageBox(NULL,TEXT("无法解除自启,尝试关闭杀毒软件以降低注册表操作权限"),

TEXT("警告!"),MB_OK);


RegCloseKey(hKey);
}

你可能感兴趣的:(VC删除注册表键值项)