このときSetProcessDPIAware関数を呼び出す前、解像度Xが1366の場合、1093になります。
#uselib "gdi32.dll" #cfunc GetDeviceCaps "GetDeviceCaps" int,int #uselib "user32.dll" #func SetProcessDPIAware "SetProcessDPIAware" #packopt hide 1 #define LOGPIXELSX $00000058 #define LOGPIXELSY $0000005A #define ctype XSIZ(%1) int(%1*XDPI/96) #define ctype YSIZ(%1) int(%1*YDPI/96) #define ctype SIZX(%1) int(%1/XDPI*96) #define ctype SIZY(%1) int(%1/YDPI*96) hginfo=ginfo(20) SetProcessDPIAware XDPI=GetDeviceCaps(hdc,LOGPIXELSX) YDPI=GetDeviceCaps(hdc,LOGPIXELSY) SetProcessDPIAware screen 0,XSIZ(640),YSIZ(480) font "MS ゴシック",YSIZ(16) mes hginfo mes SIZX(ginfo(20))
SetProcessDPIAware関数を呼び出す前と同じ値を取得したいと思っているのですが、どうすればいいのでしょうか?