gpt4 book ai didi

Windows:作为服务运行时查找屏幕分辨率

转载 作者:可可西里 更新时间:2023-11-01 10:36:06 24 4
gpt4 key购买 nike

我有作为 Windows 服务运行的代码,它想确定直接连接的显示器的分辨率。

(是的,我明白用户可能通过 RDP、VDI 等与机器交互,所以这并不总是有意义——但这只是一种优化,所以在通常情况下,只有一个直接连接桌面,它仍然有用。)

我想使用 ::GetSystemMetrics(SM_CXVIRTUALSCREEN) 但它返回 0,因为我在 session 0 中运行。同样 EnumDisplayDevices 看起来它只会为本次互动 session 工作。

即使没有用户登录,我们也希望能够执行此操作。

有没有办法将硬件屏幕分辨率作为一项服务来探索?

最佳答案

documentation EnumDisplayDevices() 清楚地说:

The EnumDisplayDevices function lets you obtain information about the display devices in the current session.

由于服务运行在session 0中,session 0中没有display,所以没有monitor信息可以枚举。

尝试使用 EnumDisplayMonitors()反而。

关于Windows:作为服务运行时查找屏幕分辨率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25675809/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com