【问题标题】:What could cause a Visual C++ 6.0 application to hang in Windows Server 2008?什么可能导致 Visual C++ 6.0 应用程序在 Windows Server 2008 中挂起?
【发布时间】:2011-02-03 08:17:36
【问题描述】:

我们有一个产品是紧急警报系统。它基于VC++ 6.0,其中我们有三个主要组件

  1. 服务器:服务器基本上是一个 DCOM 和 Windows 服务。 DCOM 用于与 Console(第二个组件)连接,以允许他们在服务与 Clients(第三个组件)交互时发送警报。 使用名为 Console 的应用程序,管理员可以连接到服务器以配置系统并发送或安排消息。然后,服务器负责近乎实时地向所有可用客户端分发警报。

  2. 控制台:控制台使用 DCOM 代理与服务器连接,该代理使用 RPC 与服务器通信。它作为管理员配置各种服务器选项的控制面板,创建用户帐户。另一方面,它用于启动警报消息。

  3. 客户端:客户端是基于 Windows 的标准应用程序。它们使用低级 TCP/IP API 与服务器连接。他们会在短时间内轮询服务器以获取可用的最新警报。

产品在具有(Windows NT、Windows 2000、Windows Server 2003 或 Windows XP)操作系统的机器上成功运行。但是在 Windows Server 2008 中,我们面临服务器在某个时间(1 或 2 天后)后挂起的问题,因此我们需要重新启动服务器才能正常工作。但另一方面,客户端仍与服务器保持连接。

在这方面有经验的人有什么建议可以帮助我们找出导致这个问题的原因吗?

【问题讨论】:

  • VC6 在任何地方都不再受支持。如果它不能在更高版本的操作系统上运行也就不足为奇了。

标签: visual-c++ stl windows-server-2008 dcom


【解决方案1】:

如果你有源代码,为什么不将 VC6 项目升级到 VC2005 或更高版本?

  • 检查兼容性运行是否可以做任何积极的事情。
  • 检查 Windows 事件是否存在任何可能的问题。
  • 使用一些文件/进程监控工具找出系统中任何可能的缺陷。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 2021-10-28
    • 2011-09-06
    • 2015-03-02
    相关资源
    最近更新 更多