windows - 远程桌面中的物理屏幕分辨率大小更改

标签 windows visual-c++ mfc gdi+ gdi

在远程桌面 session 中使用 MFC 应用程序时,屏幕分辨率不正确。 我有一个 mfc 应用程序 TestMFC。在我的机器上,如果我使用

HDC screen = ::GetDC(0);
int dpiX = GetDeviceCaps (screen, HORZSIZE);
int dpiY = GetDeviceCaps (screen, VERTSIZE);

给出 564 和 318,而当我的应用程序在远程桌面 session 中执行时,它给出 320 和 240。虽然像素大小保持不变,为 1600 和 900。 我在远程桌面屏幕设置中使用全屏设置。

最佳答案

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

关于windows - 远程桌面中的物理屏幕分辨率大小更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18397596/

相关文章:

c++ - Qt 与 Visual Studio 宏问题

python - 从 Mamba 访问 Anaconda channel

c++ - 我如何测试我的谷歌验证器的实现?

c++ - 如何使用 C++ 复制目录

c++ - 在 C++ 中增强矩阵 - 数组不起作用

c++ - UDP 客户端 - 发布版本仅在 VS 2005 中不起作用

c++ - 如何处理来自 MFC 应用程序中动态创建的控件的消息?

c++ - 托管 C++ 和 C++ 之间的区别

c++ - 如何在不等待 C++ 响应的情况下启动线程?

c++ - 如何阻止我的 MFC 应用程序在启动时调用 OnFileNew()?