如何从COM服务器调用release

2024-03-23

我正在编写一个 Com 服务器,并且编写了检测 COM 客户端意外关闭时情况的代码,在这种情况下,我应该在 COM 服务器代码中关闭 COM 服务器。

我怎样才能做到这一点?

UPD:我遇到过 COM 服务器挂起或更正确的情况,我无法从 COM 客户端连接到 COM 服务器,但包含 COM 服务器的应用程序处于活动状态,所以我认为 COM 服务器可以检测到所有旧 COM 客户端已断开连接/关闭/崩溃,应用程序将重新启动,因为没有附加新客户端。

我在 COM 客户端的单独线程中编写了以下代码

while(not we are closing)
{
   unknown->QueryInterface(IComServer, &server);

   if (server)
     return;
}

因此 COM 客户端可以等待服务器真正准备好工作

UPD2:刚刚测试:12 分钟后我的 COM 服务器关闭


COM 定期对客户端执行 ping 操作,以查看它们是否还活着,并从死客户端的接口上运行。所以你的服务器最终会发现的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从COM服务器调用release 的相关文章

随机推荐