1

我在基于 C++ MFC 的 Visual Studio 中做了一个服务器套接字项目。现在,在调试项目后,服务器 GUI 打开,然后单击服务器 GUI 上的CONNECT按钮后,您可以将客户端连接到该服务器,依此类推。

现在我想在其他计算机上使用该服务器 exe 文件。这样每当该计算机启动时,该服务器 exe 就会自动启动。所以为此我需要禁用连接按钮,以便在调试后,服务器 GUI 会自动打开并连接。但我不希望服务器 GUI 也以自动启动的方式在另一台计算机中打开。我想禁用该服务器 GUI。

我有一个无模式对话框的想法来处理它。它好还是我应该使用什么方法?

4

2 回答 2

3

您可能希望将应用程序的 GUI 部分和服务器部分分开。理想情况下,如果您的服务器实际上是服务器,则应将其作为service启动。然后你将有单独的 GUI 工具来控制它。

另一种方法是使用命令行参数来确定服务器是否应该在启用或禁用 GUI 的情况下启动。

于 2012-10-25T09:15:21.180 回答
1

此类应用程序唯一专业且稳定的解决方案是将其拆分为控制台部分,您将其置于服务控制和用户可以在需要时启动的 gui 部分的控制之下。

我尝试了像你这样的解决方案,所以我可以从我自己的经验告诉你,你会面临很多问题。

然而,一个可能的解决方案是隐藏窗口并将应用程序放置到系统托盘中是关于隐藏窗口的非常有趣的讨论。

另外,对于 MFC,我有两个很好的建议:

  1. 永远不要只是“复制过去”代码而不知道 MFC 在后台做什么(Win32api)。
  2. 不要使用 MFC。需要windows的时候可以看QT或者wxWidges,win32api的快捷封装也可以看boost库。花在上面的时间真的很值得!

祝你好运!

于 2012-10-25T11:28:24.173 回答