Forum: Win32/Win64 API (native code)
by Uwe Raabe,
27. Okt 2021
Wie zu erwarten ist das auch außerhalb des Delphiversums ein Problem: Why does Window geometry change when migrating from VS2010 to VS2017?
(Dank an Stefan Glienke für den Link)
Forum: Win32/Win64 API (native code)
by Uwe Raabe,
26. Okt 2021
Hab da gerade mal jemanden mit der Nase drauf gestupst.
Forum: Win32/Win64 API (native code)
by Uwe Raabe,
26. Okt 2021
Informelle Aussage seitens Embarcadero: Die Einstellung bleibt auch in Zukunft auf 6.0!
Da dieses Problem ja auch vom Anwender selbst durch Aktivierung des Kompatibilitätsmodus forciert werden kann, wird man an eine Anpassung seiner Anwendungen an dieses Verhalten mittelfristig wohl nicht herum kommen.
Forum: Win32/Win64 API (native code)
by Uwe Raabe,
25. Okt 2021
Interessant. Damit wird eigentlich die minimale Windows-Version festgelegt, mit der die EXE gestartet werden kann. Dabei entspricht 5.0 dem guten alten Windows 2000, die 6.0 wäre dann Windows Vista. Mir ist nicht bekannt, dass sich das irgendwie auf die SystemMetrics auswirkt.
Vielleicht solltest du dazu einen QP-Eintrag aufmachen. Beispielcode und einen (magischen) Workaround gibt es ja. Ich...
Forum: Win32/Win64 API (native code)
by Uwe Raabe,
25. Okt 2021
TControl.GetSystemMetrics verwendet die DPI-konforme Version GetSystemMetricsForDPI wenn die Anwendung als Per Monitor V2 aware läuft, ansonsten die normale GetSystemMetrics Version. Dies entspricht der Empfehlung in der Windows Dokumentation zu GetSystemMetrics:
Delphi liefert da also exakt die Werte zurück, die Windows bei der jeweiligen Funktion zurückliefert. Umgerechnet wird da gar...