HMONITOR и контекст устройства
Каждый физический дисплей представлен дескриптором монитора типа HMONITOR. Допустимое значение HMONITOR гарантированно не равно NULL. Физический дисплей имеет тот же HMONITOR , если он является частью рабочего стола. При отправке сообщения WM_DISPLAYCHANGE любой монитор может быть удален с рабочего стола, поэтому его HMONITOR становится недействительным или его параметры изменены. Поэтому приложение должно проверка, являются ли все HMONITORS допустимыми при отправке этого сообщения.
Любая функция, возвращающая контекст устройства отображения (DC), обычно возвращает контроллер домена для основного монитора. Чтобы получить контроллер домена для другого монитора, используйте функцию EnumDisplayMonitors . Вы также можете использовать имя устройства из функции GetMonitorInfo , чтобы создать контроллер домена с помощью CreateDC. Однако если функция, например GetWindowDC или BeginPaint, получает контроллер домена для окна, охватывающего несколько дисплеев, контроллер домена также будет охватывать два дисплея.