Windows10中SC_CLOSE消息的变化

今天偶然发现Windows7和Windows10中,系统在给程序发送WM_SYSCOMMAND(SC_CLOSE)消息时的方式不同


Windows 7

点击窗口右上角关闭按钮:消息被直接发送至窗口过程处理。
使用快捷键ALT+F4关闭窗口:消息被发送到主线程消息循环中,再分发到窗口过程处理。
任务栏窗口上点击右键菜单关闭窗口:消息被发送到主线程消息循环中,再分发到窗口过程处理。


Windows 10

点击窗口右上角关闭按钮:消息被直接发送至窗口过程处理。
使用快捷键ALT+F4关闭窗口:消息被发送到主线程消息循环中,再分发到窗口过程处理。
任务栏窗口上点击右键菜单关闭窗口:消息被直接发送至窗口过程处理。


结论:

Windows7中(也许是Windows10以前的版本)在处理SC_CLOSE消息时是把消息发到消息队列中。

而在Windows10中是将消息直接发到窗口处理过程。

你可能感兴趣的:(Windows10中SC_CLOSE消息的变化)