我将多台显示器插入机器:其中 2 台插入外部视频适配器,其中 2 台插入内部视频芯片。我需要知道哪些显示器插入了外部视频适配器,如何找到它?
我查看了EnumDisplayDevices,发现DISPLAY_DEVICE结构具有DISPLAY_DEVICE_PRIMARY_DEVICE
标志,可以在主屏幕上显示什么视频设备。但这还不足以解决整个任务。
更新:
我试过EnumDisplayDevices
了,在它的DISPLAY_DEVICE
对象中有一个 field DeviceString
。
DISPLAY_DEVICE DispDev;
ZeroMemory(&DispDev, sizeof(DispDev));
DispDev.cb = sizeof(DispDev);
DWORD nDeviceIndex = 0;
EnumDisplayDevices(NULL, nDeviceIndex, &DispDev, 0);
// DispDev.DeviceString now is what I need
它由视频适配器的名称组成,例如Intel(R) HD Graphics 4000
. 但是名称可以不同,如何区分集成视频和外部视频