Ich vermute mal, dass das Manifest der Exe das Verhalten der
DLL bestimmt.
Aber man kann auch die Window
API benutzen um das manuell zu setzen.
Ich verwende dazu SetThreadDpiAwarenessContext, da ich das Verhalten der Exe /
DLL einstellbar ist.
Hier noch die dafür möglichen Parameter aus der
Winapi.Windows:
Delphi-Quellcode:
const
DPI_AWARENESS_CONTEXT_UNAWARE: DPI_AWARENESS_CONTEXT = DPI_AWARENESS_CONTEXT(-1);
DPI_AWARENESS_CONTEXT_SYSTEM_AWARE: DPI_AWARENESS_CONTEXT = DPI_AWARENESS_CONTEXT(-2);
DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE: DPI_AWARENESS_CONTEXT = DPI_AWARENESS_CONTEXT(-3);
DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2: DPI_AWARENESS_CONTEXT = DPI_AWARENESS_CONTEXT(-4);
DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED: DPI_AWARENESS_CONTEXT = DPI_AWARENESS_CONTEXT(-5);
Manche wissen gar nicht, dass man gar nicht gar nicht zusammenschreibt.