Определить, было ли масштабировано / виртуализировано приложение, не поддерживающее DPI

Я пытаюсь определить в приложении WinForms, запущено ли оно в масштабированном / виртуализированном режиме из-за того, что ОС имеет высокий DPI. В настоящее время в системе с разрешением 3840x2400 с масштабированием 200% приложение видит разрешение 1920x1200, DPI - 96, а масштабный коэффициент равен 1.

Мы находимся в процессе создания приложения с учетом DPI, но до этого нам нужно «быстрое исправление», которое позволит нам обнаруживать масштабирование. Причина этого заключается в том, что это нарушает функциональность приложения, которое делает снимок экрана. Мы используем масштабированные размеры в Graphics.CopyFromScreen, он делает скриншот неправильного размера, так как он ожидает немасштабированных размеров.

Мне известно о настройке DPI-осведомленности, но на данный момент мы все еще хотим, чтобы приложение масштабировалось, но при этом мы можем обнаружить, что мы масштабированы, и получить немасштабированные измерения, если это возможно.

Ответы на вопрос(1)

Ваш ответ на вопрос