Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   HighDPI Einstellung in Anwendung erkennen (https://www.delphipraxis.net/216502-highdpi-einstellung-anwendung-erkennen.html)

backdraft 8. Jan 2025 10:17

HighDPI Einstellung in Anwendung erkennen
 
Hallo,

gibt es eine simple Möglichkeit zu erkennen, mit welcher DPI Unterstützung die Anwendung kompiliert wurde?

BerndS 8. Jan 2025 10:31

AW: HighDPI Einstellung in Anwendung erkennen
 
In der Unit Winapi.ShellScaling gibt es :

Delphi-Quellcode:
function GetProcessDpiAwareness(hprocess: THandle; out value: TProcessDpiAwareness): HRESULT; stdcall;


Der Rückgabewert müsste diese Einstellung zurückgeben. (nicht getestet)

dummzeuch 8. Jan 2025 10:37

AW: HighDPI Einstellung in Anwendung erkennen
 
Das kann man aus dem Manifest auslesen.

Das dpiAware-Element kann sein:
  • "per monitor" oder "true/pm"
  • "true"
  • "false"

oder es kann ganz fehlen.

Oder willst du es innerhalb des Programms selbst auslesen? Dazu gibt es die GetProcessDpiAwareness WinAPI Funktion.

backdraft 8. Jan 2025 10:43

AW: HighDPI Einstellung in Anwendung erkennen
 
Im Programm selbst.
Ich würde es gerne fürs Debugging wissen, da ich Probleme habe mit einer "alten" Komponente, die ich umbauen muss.
Deswegen wäre es gut zu wissen, ob das im aktuellen Programm an oder aus ist, damit ich das hin und her schalten kann und direkt sehe, was gerade aktiv ist.
Ich probiere mal das GetProcessDpiAwareness.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:45 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz