【问题标题】:Physical Screen Resolution Size Changes In Remote Desktop远程桌面中的物理屏幕分辨率大小更改
【发布时间】: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


【解决方案1】:

HORZSIZE 尝试以毫米为单位返回屏幕的物理尺寸(当信息可用时)。您应该对像素使用 HORZRES。

【讨论】:

  • 他已经这样做了。引用:“虽然像素大小保持不变”。
猜你喜欢
  • 2022-11-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-08
  • 1970-01-01
  • 2012-03-04
相关资源
最近更新 更多