【问题标题】:How to stop close (x) event of console window if that is in use如果正在使用控制台窗口,如何停止关闭(x)事件
【发布时间】:2016-03-02 23:41:20
【问题描述】:

我有两个控制台应用程序:客户端和服务器(服务器是自托管的 wcf 服务)。

多个客户端可以连接到同一个服务器。

如果用户单击服务器控制台的 X 按钮...并且如果连接到该服务器的客户端数量 > 0,则不应关闭。

我尝试了此处可用的代码Capture console exit C#...并更改了如下处理程序。

 private static bool Handler(CtrlType sig)
    {
        if (CanCloseServer())
        {
            exitSystem = true;
            //shutdown right away so there are no lingering threads
            //Environment.Exit(0);
            return true;
        }
        return false;
    }

它仍然关闭窗口(原因我认为是窗口关闭命令即使现在也不会中断)。谁能告诉我如何取消 X 活动。

【问题讨论】:

  • 愚蠢的问题,但您是否尝试在_Closing 方法中捕捉到这个问题?
  • 我们有 _Closing 控制台应用程序吗?我不知道。
  • 哦,对不起,误读了。我以为这是你试图捕捉到的一种形式。忽略我!哈哈

标签: c# console


【解决方案1】:

您可以创建一个没有关闭按钮的自定义迷你控制台应用程序来运行您的服务器程序。在this question 的答案中找到了不错的 sn-p。

【讨论】:

  • 我可以禁用关闭按钮,但我的业务需要的是带有 X 按钮的控制台。
  • 在迷你控制台应用程序上放置一个自定义关闭按钮怎么样?
猜你喜欢
  • 2017-03-29
  • 1970-01-01
  • 2012-04-22
  • 1970-01-01
  • 1970-01-01
  • 2015-01-28
  • 2014-04-11
  • 2012-10-14
  • 1970-01-01
相关资源
最近更新 更多