SystemParametersInfo und NONCLIENTMETRIC
Verfasst: 29.07.2014 18:41
Hallo liebe Foristen,
ich lese aktuell wie folgt die Standard-UI-Schrift aus:
Nun habe ich zufällig mitbekommen, dass ab Vista ein zusätzlicher Integer in der Struktur
dazugekommen ist (http://msdn.microsoft.com/en-us/library ... p/ff729175).
D.h. unter XP übergebe ich SystemParametersInfo eine falsche größe (vier Bytes bei x86 zu viel),
da mein Programm ja unter 8.1 kompiliert wurde...oder?
Ich bin nun irritiert, da in PB die Struktur diesen zusätzlichen Integer nicht besitzt...wie programmiere
ich nun "richtig", damit mein Auslesen der Schriftart unter XP genau so erfolgreich ist wie unter 8.1?
ich lese aktuell wie folgt die Standard-UI-Schrift aus:
Code: Alles auswählen
Define.NONCLIENTMETRICS NCM
Define MessageFont
NCM\cbSize = SizeOf(NONCLIENTMETRICS)
SystemParametersInfo_(#SPI_GETNONCLIENTMETRICS, SizeOf(NONCLIENTMETRICS), @NCM, 0)
MessageFont = CreateFontIndirect_(@NCM\lfMessageFont)
If MessageFont
SetGadgetFont(#PB_Default, MessageFont)
EndIf
dazugekommen ist (http://msdn.microsoft.com/en-us/library ... p/ff729175).
D.h. unter XP übergebe ich SystemParametersInfo eine falsche größe (vier Bytes bei x86 zu viel),
da mein Programm ja unter 8.1 kompiliert wurde...oder?
Ich bin nun irritiert, da in PB die Struktur diesen zusätzlichen Integer nicht besitzt...wie programmiere
ich nun "richtig", damit mein Auslesen der Schriftart unter XP genau so erfolgreich ist wie unter 8.1?