请教如何判断一个active控件是否已安装和是否已注册?

解决方案 »

  1.   

    抄来的:
    如何在应用程序中判断DLL(COM)已注册?  
    ---------------------------------------------------------------  
     
    读注册表\HKEY_CLASSES_ROOT\APPID,看你的DLL是否注册,  
     
    ---------------------------------------------------------------  
     
    HKEY  valueKey;  
    if  (ERROR_SUCCESS!=RegOpenKeyEx(HKEY_CLASSES_ROOT,  
    "?????",0,KEY_READ,&valueKey)) 
     {  //?????为类ID,如"CLSID\\{3B5B0834-5D5D-46C9-AFC9-FD746EDCC272}"  
    //未注册成功  
    return;  
    }  
    else  
    //已经注册成功
      

  2.   

    请参考
    // 判断某个Filter是否已经注册
    BOOL CDsDemoDlg::IsFilterRegistered(CLSID inFilterId)
    {
    IBaseFilter * pFilter = NULL;
    if (SUCCEEDED(CoCreateInstance(inFilterId, NULL, CLSCTX_INPROC_SERVER,
    IID_IBaseFilter, (void **)&pFilter)))
    {
    pFilter->Release();
    return TRUE;
    }
    return FALSE;
    }