Jacek Caban (@jacek) commented about dlls/user32/sysparams.c:
DISPLAYCONFIG_TARGET_DEVICE_NAME *target_name = (DISPLAYCONFIG_TARGET_DEVICE_NAME *)packet;
BYTE iface_detail_buffer[sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA_W) + 256 * sizeof(WCHAR)];
SP_DEVICE_INTERFACE_DATA iface = {sizeof(iface)};
SP_DEVICE_INTERFACE_DETAIL_DATA_W *iface_data;
UINT32 output_id;
FIXME("DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME: stub\n");
TRACE("DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME.\n"); if (packet->size < sizeof(*target_name)) return ERROR_INVALID_PARAMETER;
return ERROR_NOT_SUPPORTED;
mutex = get_display_device_init_mutex();
devinfo = SetupDiGetClassDevsW(&GUID_DEVINTERFACE_MONITOR, NULL, NULL, DIGCF_DEVICEINTERFACE | DIGCF_PRESENT);
We will eventually want this all moved to win32u (NtUserDisplayConfigGetDeviceInfo in this case), where we can't use setupapi and use cached device info instead. I think it would be better to add new code there instead adding new setupapi-based code to user32.