Hello,
For how to clone you can refer to this thread.
There is a target identifier in every path. Through this target identifier you can get monitorDevicePath using DisplayConfigGetDeviceInfo. Which contains information you can find in DeviceID.
For example:
From above snapshots we can see the shared information DELF06B which you can use to match a target of a display path to the DeviceID.
Code piece of getting monitorDevicePath
:
DISPLAYCONFIG_TARGET_DEVICE_NAME configInfo;
memset(&configInfo, 0, sizeof(configInfo));
configInfo.header.type = DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME;
configInfo.header.id = pathArray[i].targetInfo.id;
configInfo.header.size = sizeof(DISPLAYCONFIG_TARGET_DEVICE_NAME);
configInfo.header.adapterId = pathArray[i].targetInfo.adapterId;
LONG retVal = DisplayConfigGetDeviceInfo((DISPLAYCONFIG_DEVICE_INFO_HEADER*)&configInfo);
Thank you!