【发布时间】:2015-10-28 17:20:52
【问题描述】:
我需要从 Delphi 程序中获取桌面分辨率。
但是,如果程序不支持 DPI,Windows 会谎报真实的屏幕分辨率,所以各种问题都会从这里出现。
由于要让程序完全识别 DPI 的工作量太大(并且我尝试避免使用 WMI solution),我正在考虑使用一个快速的肮脏技巧:我将创建一个可识别 DPI 的微观控制台程序,该程序将读取真正的分辨率。
每次需要分辨率时,主程序都会使用启动这个小程序(隐藏)。看起来很简单。对吧?
问题 1:我还有其他(更好的)选择吗?
问题 2:我试图创建那个小程序。虽然它有大约 10 行代码,但它的 EXE 大小为 2.1MB,内存占用为 5.4MB!
我可以把它变小吗?如果程序足够小(小于 1MB RAM),我可以让它一直运行而不会惹恼用户。
【问题讨论】:
-
一个解决方案是 WMI,但 WMI 不是所有 Windows 计算机都可用。
-
我也是这么读的,包括提到写一个小实用程序。对不起,如果你没有把区别说清楚。这不是欺凌,也不是废话。是用户写了非常相似的问题,却没有明确说明为什么它们不同。如果您没有尽职尽责地说明差异,请不要怪我。
-
我不知道你为什么在这里坚持粗鲁和咄咄逼人。首先,您无权告诉任何人远离 - 当您在此处发帖时,每个人都可以回答、编辑或投票结束。不喜欢?不要发帖。其次,我并不粗鲁。您发布了似乎是重复的问题,我就这样关闭了它;它已重新开放。别发牢骚了。第三,正如您在我的个人资料中看到的那样,我在这里提供了数千个不错的答案。如果您不想结束您的问题,请写出更好的问题。如果您不想编辑它们,请写出更好的问题。
标签: delphi delphi-xe7