tematch 2014-12-18 06:43 采纳率: 0%
浏览 1931

c++调用自己编写的ocx库文件失败原因

#include
#include
#include "../last/LAST.h"
#include "../last/LAST_i.c"

void main(void)
{
// 声明一个HRESULT变量以及一个Simple_ATL接口的指针
IMyClass *IMyClass = NULL;

HRESULT hr = CoInitialize(NULL); // 初始化COM

// 现在初始化COM
hr = CoInitialize(0);
// 使用SUCCEEDED宏来看看我们是否能够获得接口的指针
if(SUCCEEDED(hr))
{
    hr = ::CoCreateInstance( CLSID_MyClass, //Com对象标识符
        NULL,                 //指向接口IUnknown指针
        CLSCTX_INPROC_SERVER, //运行可执行代码上下文
        IID_IMyClass,         //Com对象接口标识符
        (void**)&IMyClass);   //用来接收指向Com对象接口地址指针变量

    if(SUCCEEDED(hr))
    {
        int ReturnValue;
        IMyClass->AddNumber(5, 7, &ReturnValue);
        cout << "The answer for 5 + 7 is: " 
            << ReturnValue << endl;
        IMyClass->Release(); 
    }
    else
    {
        cout<<"--------- hr = "<<hr<<endl;
        cout << "CoCreateInstance Failed." << endl;
    }

     // 释放COM
    CoUninitialize();


}
else
{
    cout << "CoInitialize Failed." << endl;
}

}

运行的时候会返回失败"CoCreateInstance Failed." ,hr = -2147024770

这个是啥原因啊?

  • 写回答

4条回答

  • lx624909677 2014-12-18 06:49
    关注

    GetLastError看下返回值是多少。

    评论

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料