【发布时间】:2010-02-28 17:48:43
【问题描述】:
在 C++ 程序中,对 coclass 方法的调用返回错误 0x80010108(调用的对象已与其客户端断开连接)。可能是什么原因造成的?
【问题讨论】:
在 C++ 程序中,对 coclass 方法的调用返回错误 0x80010108(调用的对象已与其客户端断开连接)。可能是什么原因造成的?
【问题讨论】:
这是一个 RPC 错误,您会在使用进程外 COM 时看到它。它告诉您服务器 .exe 停止运行。应该是被炸了或者即使仍然有活动的接口引用,也决定退出。那可能是引用计数问题。或不当使用 CAtlModule::Lock()。等等,我只能猜测。使用 Tools + Attach to Process 调试服务器并找出它决定退出的原因。
【讨论】:
此错误是从 COM 生成的代理对象引发的,因此您的服务器对象(被调用的对象)位于另一个单元中、以太网进程外或当前进程中的另一个线程上。这间公寓发生了一些非常糟糕的事情,所以它被终止了,现在代理无法访问那里的 COM 存根(通过 RPC 或消息泵)。
【讨论】: