EnumDisplayDevices功能可让您获取有关系统中显示设备的信息

EnumDisplayDevices
EnumDisplayDevices功能可让您获取有关系统中显示设备的信息。 

BOOL EnumDisplayDevices(
  LPCTSTR lpDevice,//设备名称
  DWORD iDevNum,//显示设备
  PDISPLAY_DEVICE lpDisplayDevice,//设备信息
  DWORD dwFlags //保留
);
参数
lpDevice 
[in]指向设备名称的指针。如果为NULL,函数将返回基于iDevNum的机器上显示适配器的信息。有关详细信息,请参阅备注。
iDevNum 
[in]指定感兴趣的显示设备的索引值。 
操作系统用每个显示设备识别索引值。索引值是从0开始的连续整数。例如,如果系统有三个显示设备,则它们由索引值0,1和2指定。

lpDisplayDevice 
[out]指向DISPLAY_DEVICE结构的指针,该结构接收由iDevNum指定的显示设备的信息。 
在调用EnumDisplayDevices之前,必须将DISPLAY_DEVICE的cb成员初始化为DISPLAY_DEVICE的大小(以字节为单位)。 

dwFlags中 
此参数当前未使用,应设置为零。 
返回值
如果函数成功,返回值不为零。 

如果函数失败,返回值为零。如果iDevNum大于最大的设备索引,该函数将失败。

备注
要查询系统中的所有显示设备,请在循环中调用此函数,从iDevNum设置为0开始,并增加iDevNum直到函数失败。要选择桌面中的所有显示设备,请仅使用DISPLAY_DEVICE结构中具有DISPLAY_DEVICE_ATTACHED_TO_DESKTOP标志的显示设备。

要获取显示适配器的信息,请将lpDevice的EnumDisplayDevices设置为NULL。例如,DISPLAY_DEVICE.DeviceString包含适配器名称。

要获取显示监视器上的信息,请首先将lpDevice的EnumDisplayDevices设置为NULL。然后调用EnumDisplayDevices,将lpDevice设置为DISPLAY_DEVICE.DeviceName,从第一次调用EnumDisplayDevices,并将iDevNum设置为零。那么DISPLAY_DEVICE.DeviceString是监视器名称。

如果一个适配器有多个显示器,要获取所有这些信息,您必须重复调用EnumDisplayDevices。每次调用该函数时,将lpDevice设置为适配器名称并增加iDevNum。请注意,每个调用监视器信息,DISPLAY_DEVICE.DeviceName会更改,因此必须保存适配器名称。当适配器没有更多显示器时,该功能将失败。

Windows 98 / Me:EnumDisplayDevicesW由Microsoft Layer for Unicode支持。要使用此功能,必须向应用程序添加某些文件,如Windows 95/98 / Me系统上的Microsoft Layer for Unicode所述。

要求 
  Windows NT / 2000 / XP:包含在Windows 2000及更高版本中。
  Windows 95/98 / Me:包含在Windows 98及更高版本中。
  标题:在Winuser.h中声明 包括Windows.h。
  图书馆:使用User32.lib。
  Unicode:在Windows 2000 / XP上实现为Unicode和ANSI版本。还支持Microsoft Layer for Unicode。

也可以看看
设备上下文概述,设备上下文功能,ChangeDisplaySettings,ChangeDisplaySettingsEx,CreateDC,DEVMODE,DISPLAY_DEVICE,EnumDisplaySettings

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值