【发布时间】:2013-08-26 04:42:27
【问题描述】:
在远程桌面会话中使用 MFC 应用程序会提供不正确的屏幕分辨率。 我有一个 mfc 应用程序 TestMFC。如果我使用
在我的机器上HDC screen = ::GetDC(0);
int dpiX = GetDeviceCaps (screen, HORZSIZE);
int dpiY = GetDeviceCaps (screen, VERTSIZE);
当我的应用程序在远程桌面会话中执行时,我给出了 564 和 318,它给出了 320 和 240。虽然像素大小保持相同的 1600 和 900。 我在远程桌面屏幕设置中使用全屏设置。
【问题讨论】:
-
你的问题是什么?
-
您希望远程机器发送回有关其监视器的信息。即使您可以动态更改窗口的大小。它只是没有。
-
我想要的是在任何设备上绘制 10*10 毫米大小的图像。为此,我正在使用 MM_LOMETRIC。所以它适用于显示器和打印机。但是当使用远程桌面在某些远程机器上使用相同的应用程序时。它放大它。在这两种情况下,我都尝试获取屏幕逻辑范围,它返回了不同的范围值。所以我的问题是为什么我在两种情况下都得到不同的值。
标签: windows visual-c++ mfc gdi+ gdi