CmGetDeviceRelationsList
NTSTATUS __stdcall CmGetDeviceRelationsList(
HPNPCTX *hPnpCtx,
const WCHAR *DeviceInstance,
UINT64 CmRelationType,
WCHAR *Buffer,
UINT64 BufferLength,
UINT64 *RequiredLength,
UINT64 Flags){
unsigned int v7;
NTSTATUS result;
_UNICODE_STRING DestinationString;
v7 = 4;
DestinationString = 0i64;
switch( (_DWORD)CmRelationType )
{
case 4:
v7 = 0;
break;
case 8:
v7 = 1;
break;
case 0x10:
v7 = 2;
break;
case 0x20:
v7 = 3;
break;
case 0x40:
break;
default:
return -1073741811;
}
result = RtlInitUnicodeStringEx(&DestinationString, (WCHAR *)DeviceInstance);
if( result >= 0 )
return NtPlugPlayGetDeviceRelationsList(
(__int64)hPnpCtx,
(__int64)&DestinationString,
v7,
(__int64)Buffer,
BufferLength,
(__int64)RequiredLength);
return result;
}Referenced by:
CmGetDeviceMappedPropertyFromComposite
CmGetMatchingFilteredDeviceListWorker
PiCMGetDeviceIdList