使用PeekMessage后,调用postquitmessage(0)不能退出消息循环的原因

如果使用PeekMessage(&msg, hwnd, 0, 0, PM_REMOVE),当调用postquitmessage(0)后,窗口被关闭,此时hwnd已经无效,那么PeekMessage(&msg, hwnd, 0, 0, PM_REMOVE)将会获取到一个0xa1的消息,这个消息不等于MSG_QUIT, 所以不会跳出循环,正确的做法是

PeekMessage(&msg, 0, 0, 0, PM_REMOVE)

你可能感兴趣的:(使用PeekMessage后,调用postquitmessage(0)不能退出消息循环的原因)