取消OnFormClosing和任务管理器

时间:2011-11-04 17:07:35

标签: c# winforms taskmanager

根据MSDN  http://msdn.microsoft.com/en-us/library/system.windows.forms.form.onformclosing.aspx

我试图阻止用户关闭表单(Windows关闭除外)。

protected override void OnFormClosing(FormClosingEventArgs e)
{
    if (e.CloseReason != CloseReason.WindowsShutDown)
    {
        e.Cancel = true;
        wiggle();
    }
    base.OnFormClosing(e);
}

从任务管理器“结束任务”按钮关闭时,窗口没有按预期关闭,但几秒后我收到错误

enter image description here

Windows如何确定程序是否响应! 所有表格都没有......

1 个答案:

答案 0 :(得分:0)

任务管理器要求程序关闭,但事实并非如此。至少在WinXP中,任务管理器不喜欢这样,并在几秒钟后弹出“无响应”窗口。

尝试阻止应用关闭通常是一种糟糕的设计,尤其是这种方式。 TaskMan的下一个选项卡将绕过任何此类检查。