DllRegisterServer 这个函数一般都是作为一个 COM 组件的注册函数出现的,可以用 Windows 自带的 regsvr32.exe 来注册。以上错误信息表明,你的这个 DLL 没有 这个输出函数,如果这个 DLL 是你自己做的,你可以检查你的代码中是否输出了这个函数(应该是没有),没有这个输出函数,当然就会有这些错误信息了。

解决方案 »

  1.   

    试试下列的代码:  LPCTSTR pszDllName="dll文件名";//ActiveX控件的路径及文件名
      HINSTANCE hLib = LoadLibrary(pszDllName);//装载ActiveX控件
      if (hLib < (HINSTANCE)HINSTANCE_ERROR)
      {
           MessageBox("不能载入!","错误",MB_OK);
           return;
      }
      //获取注册函数DllRegisterServer地址
      FARPROC lpDllEntryPoint; 
      lpDllEntryPoint = GetProcAddress(hLib,_T("DllRegisterServer"));
      //调用注册函数DllRegisterServer
      if(lpDllEntryPoint!=NULL)
      {
           if(FAILED((*lpDllEntryPoint)()))
           {
                MessageBox("调用DllRegisterServer 失败!","结果",MB_OK);
                FreeLibrary(hLib);
                return;
           }
           MessageBox("注册成功","成功",MB_OK);
      }
      else
      MessageBox("调用DllRegisterServer失败!","错误",MB_OK);
    }