windows – 如何使用Win32 API获取多个监视器的显示名称?
发布时间:2020-07-22 15:24:16  所属栏目:Windows  来源:互联网 
            导读:我有两台显示器连接到我的 Windows PC – 一台是普通显示器,另一台是投影仪.因为Windows不能一致地将一个或另一个指定为主监视器(部分原因是因为它们在Windows启动时并不总是都打开),所以我需要以编程方式检测哪个监视器是哪个. 控制面板在您选择的主监视器屏
                
                
                
            | 
                         我有两台显示器连接到我的 Windows PC – 一台是普通显示器,另一台是投影仪.因为Windows不能一致地将一个或另一个指定为主监视器(部分原因是因为它们在Windows启动时并不总是都打开),所以我需要以编程方式检测哪个监视器是哪个. 控制面板在您选择的主监视器屏幕中将监视器的名称显示为“HP 2159”(普通监视器)和“PROJECTOR”.这是我想要在我的程序中获得的信息. 我无法找到适合此信息的Win32 API函数.我已经尝试过EnumDisplayDevices和EnumDisplayMontiors.两者都只是将“DISPLAY1”和“DISPLAY2”作为设备名称.我应该使用什么来获得“HP 2159”和“PROJECTOR”信息或类似的东西? 更新:这是我正在使用的Python代码: >>> import win32api
>>> monitors = win32api.EnumDisplayMonitors()
>>> win32api.GetMonitorInfo(monitors[0][0])
{'Device': '\.DISPLAY1','Work': (0,1920,1080),'Flags': 1,'Monitor': (0,1080)}
>>> win32api.GetMonitorInfo(monitors[1][0])
{'Device': '\.DISPLAY2','Work': (1920,3360,'Flags': 0,'Monitor': (1920,1080)}
 EnumDisplayMonitors将监视器句柄传递给 
 MonitorEnumProc回调函数.您可以将该句柄传递给 
 GetMonitorInfo,确保将指针传递给 
 MonitorInfoEx结构并相应地设置cbSize成员. 
  
 返回时,MonitorInfoEx结构中的szDevice字段将包含监视器的名称. (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!  | 
                  
推荐文章
            站长推荐
            - windows-phone-7 – 谁在Windows Phone 7中设置了
 - silent-installer – 如何在没有用户交互的情况下
 - Win2012 R2 Boot Configuration Data is missing
 - windows – ruby win32apistructs(VerQueryValue
 - 获取Windows代理用户名/密码
 - windows – 如何使用Win32 API获取多个监视器的显
 - xaml – Wrap TextBlock的最大行数
 - 类共享警告不允许我使用visualVM在本地(Windows)
 - 同步域内时间方法二:PDC主机作为时间源
 - Windows-8 – 可以在Windows 10/Windows 8/WinRT
 
热点阅读
            