c#调用C开发的COM组件生成的DLL
c#调用C开发的COM组件生成的DLL,在主线程中正常调用没问题,我用FOR语句多次调用正常如果另开启一个线程就会报错,错误信息如下:未处理System.InvalidC...
c#调用C开发的COM组件生成的DLL, 在主线程中正常调用 没问题,我用FOR语句多次调用正常 如果另开启一个线程就会报错,错误信息如下:
未处理 System.InvalidCastException
Message="无法将类型为“OPLoadS.OPGetClass”的 COM 对象强制转换为接口类型“OPLoadS.IOPGet”。此操作失败的原因是对 IID 为“{3356EC38-7543-4E2E-B985-42F2EFB4B7BE}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 不支持此接口 (异常来自 HRESULT:0x80004002 (E_NOINTERFACE))。"
最后我把线程改为TIMER,也是这个错误,我在网上查了多线程调用COM的问题,都没解决,还请高手帮忙
能通过其它办法解决我要实现的功能也可以:在不干扰主线程的情况下,一直运行COM提供的方法,
谢谢 展开
未处理 System.InvalidCastException
Message="无法将类型为“OPLoadS.OPGetClass”的 COM 对象强制转换为接口类型“OPLoadS.IOPGet”。此操作失败的原因是对 IID 为“{3356EC38-7543-4E2E-B985-42F2EFB4B7BE}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 不支持此接口 (异常来自 HRESULT:0x80004002 (E_NOINTERFACE))。"
最后我把线程改为TIMER,也是这个错误,我在网上查了多线程调用COM的问题,都没解决,还请高手帮忙
能通过其它办法解决我要实现的功能也可以:在不干扰主线程的情况下,一直运行COM提供的方法,
谢谢 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询