在Windows EndSession时, WPF的Shutdown()和Winforms的Application.Exit()都不可靠

当Windows的用户退出系统或者关闭系统是, Windows会向每个应用程序发出WM_QUERYENDSESSION消息和WM_ENDSESSION消息.

在WPF中, Application的SessionEnding事件可以处理WM_QUERYENDSESSION消息. 然而, 应用程序有时却不会关闭, 特别是主窗口时TopMost时, 即使手动调用Application.Shutdown(), Application的Exit事件也可能不会发出.

原文地址:https://www.cnblogs.com/mrfangzheng/p/1588543.html