多屏幕有缩放时,GetSystemMetrics无法获取到正确的虚拟屏幕大小,即和系统的printscreen截图的尺寸不同。用GetMonitorInfo,获取到的屏幕虚拟坐标按缩放后的计算也不对,如果前一个屏幕缩放,那么下一个屏幕的坐标和前一个屏幕的坐标就不连续了,但也不是正确的绝对坐标。
单个屏幕的大小可以通过GetDeviceCaps(hDC, DESKTOPHORZRES);和GetDeviceCaps(hDC, HORZRES);获取到,但是坐标一旦不对,就非常麻烦了。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课