监视器数量变化时的通知是什么?

时间:2015-11-17 16:28:50

标签: c++ c windows winapi

我很好奇,当系统中的监视器数量发生变化时,广播的Win32通知是什么?我以为是WM_DISPLAYCHANGE,但我错了。

1 个答案:

答案 0 :(得分:11)

使用Microsoft Spy++检查很容易。在我的情况下,我检查了Windows 7 x64,连接了两台显示器,然后关闭再打开第二台显示器。

删除显示器时,您会看到WM_DISPLAYCHANGE,但在添加显示器时则不会。

您会看到WM_DEVICECHANGE DBT_DEVNODES_CHANGEDRegisterDeviceNotification之后)。

您会看到WM_SETTINGCHANGESPI_SETWORKAREA的{​​{1}}。

您将看到已注册的消息“UxdDisplayChangeMes​​sage”和“HotplugDetected”(仅在添加监视器时为第二个)。您可以使用RegisterWindowMessage获取这些消息的标识符。