刚开始一段时间是正确的,后来hr的值就不对了,请问该如何解决?

解决方案 »

  1.   

    运行时错误,可能原因太多了,忘了调用CoInitialize就是一个。
      

  2.   

    单从HRESULT的返回值来说是由WIN32头文件定义的函数返回值类型,也就是COM统一的返回值
    -2147221008也说明不了问题的原因,以下是参考S_OK   0x00000000   成功
    S_FALSE  0x00000001  函数成功执行完成,但返回时出现错误
    E_INVALIDARG  0x80070057  参数有错误
    E_OUTOFMEMORY  0x8007000E  内存申请错误
    E_UNEXPECTED  0x8000FFFF  未知的异常
    E_NOTIMPL  0x80004001  未实现功能
    E_FAIL  0x80004005  没有详细说明的错误。一般需要取得 Rich Error 错误信息(注1)
    E_POINTER  0x80004003  无效的指针
    E_HANDLE  0x80070006  无效的句柄
    E_ABORT  0x80004004  终止操作
    E_ACCESSDENIED  0x80070005  访问被拒绝
    E_NOINTERFACE  0x80004002  不支持接口估计是你的组件没有调用,有异常
      

  3.   

    是不是CoInitialize没有被调用?