[已解决问题] C# 控制台问题
提问时间: 2008-03-02 02:25
悬赏分:5 浏览:419 次

怎么才能实现用鼠标点了控制台左上角"X"(关闭)后,而控制台不退出.

只有通过输入指定命令后控制台才可以退出呢?


提问者:oxsoft - 初学一级
所有回答(4)
看了一下应该不行~~不知道使用非托管代码有没有可能,但是如是怕被非法关闭的话最好做成Windows服务就可以了.
5个月前   回答者:沙加 - 老鸟四级
应该不行
5个月前   回答者:Dove.Net - 初学一级
很多程序的关闭是最小化到右下角的。可以查一下
5个月前   回答者:暗香浮动 - 菜鸟二级
用 kernel32.dll 中的 API
[DllImport("kernel32.dll")]
static extern bool SetConsoleCtrlHandler(HandlerRoutineCallback call, bool add);
delegate bool HandlerRoutineCallback(uint dwCtrlType);
const uint CTRL_CLOSE_EVENT = 2;


SetConsoleCtrlHandler(
    delegate(uint type)
    {
      return (type == CTRL_CLOSE_EVENT);
    }
 , true);

不过有超时限制,两秒内如果没有处理完 Windows 会弹出对话框
5个月前   回答者:Zealic - 初学一级
评论
   您需要登录以后才能回答!
我的问题    我要提问


快到期问题

> 问题排行榜

有不合适内容,建议去除