카테고리 없음
[WinAPI] App 속한 Monitor Handle 구하기
코드베어
2022. 10. 8. 10:53
멀티 모니터 구성에서 개발한 Application이 속한 모니터 정보를 구하고 싶을때 다음과 같은 API 함수들을 활용할 수 있다.
- MonitorFromWindow
- MonitorFromRect
- MonitorFromPoint
각각 Window (or Rect or Point) 가 위치한 ( 혹은 영역이 많이 포함된 ) 모니터의 핸들을 반환해준다.
HMONITOR MonitorFromPoint(
[in] POINT pt,
[in] DWORD dwFlags
);
HMONITOR MonitorFromRect(
[in] LPCRECT lprc,
[in] DWORD dwFlags
);
HMONITOR MonitorFromWindow(
[in] HWND hwnd,
[in] DWORD dwFlags
);
매개변수중 dwFlags는 혹시나 윈도우가 포함된 모니터를 찾지 못할 때 무엇을 반환할지 결정하는 변수이다.
ex ) MONITOR_DEFAULTTONEAREST : 가장 가까운 모니터 핸들을 반환
이렇게 구한 Monitor Handle로 GetMonitorInfo를 사용해 모니터 정보를 가져올 수 있다.