39 'C',
'u',
'r',
'r',
'e',
'n',
't',
'C',
'o',
'n',
't',
'r',
'o',
'l',
'S',
'e',
't',
'\\',
40 'C',
'o',
'n',
't',
'r',
'o',
'l',
'\\',
41 'C',
'l',
'a',
's',
's',0};
44 'C',
'u',
'r',
'r',
'e',
'n',
't',
'C',
'o',
'n',
't',
'r',
'o',
'l',
'S',
'e',
't',
'\\',
45 'C',
'o',
'n',
't',
'r',
'o',
'l',
'\\',
46 'D',
'e',
'v',
'i',
'c',
'e',
'C',
'l',
'a',
's',
's',
'e',
's',0};
65#define LOG_CONF_MAGIC 0x464E434C
77#define RES_DES_MAGIC 0x53445352
85#define NOTIFY_MAGIC 0x44556677
103#define RANGE_LIST_MAGIC 0x33445566
111#define CONFLICT_MAGIC 0x11225588
210 wcscpy(pszDeviceId, pszDeviceInstanceId);
239 ULONG ulTransferLength, ulLength;
242 TRACE(
"GetDeviceInstanceKeyPath()\n");
246 if (pszBuffer ==
NULL)
248 ERR(
"MyMalloc() failed\n");
256 ulTransferLength = 300 *
sizeof(
WCHAR);
257 ulLength = 300 *
sizeof(
WCHAR);
297 TRACE(
"szBuffer: %S\n", pszBuffer);
303 TRACE(
"szBuffer: %S\n", pszBuffer);
307 if (ulHardwareProfile == 0)
311 L"System\\CurrentControlSet\\Hardware Profiles",
313 L"System\\CurrentControlSet\\Control\\Class",
319 L"%s\\%04lu\\%s\\%s",
320 L"System\\CurrentControlSet\\Hardware Profiles",
322 L"System\\CurrentControlSet\\Control\\Class",
330 L"System\\CurrentControlSet\\Control\\Class",
344 if (ulHardwareProfile == 0)
348 L"System\\CurrentControlSet\\Hardware Profiles",
350 L"System\\CurrentControlSet\\Enum",
356 L"%s\\%04lu\\%s\\%s",
357 L"System\\CurrentControlSet\\Hardware Profiles",
359 L"System\\CurrentControlSet\\Enum",
367 L"System\\CurrentControlSet\\Enum",
371 L"Device Parameters");
381 L"System\\CurrentControlSet\\Enum",
387 if (pszBuffer !=
NULL)
400 if (pRangeList ==
NULL)
424 if (pLogConfInfo ==
NULL)
448 if (pResDesInfo ==
NULL)
472 if (pConflictData ==
NULL)
502 ULONG ulTransferLength;
505 TRACE(
"CMP_GetBlockedDriverInfo(%p %p %lx %p)\n",
506 pszNames, pulLength, ulFlags, hMachine);
508 if (hMachine !=
NULL)
520 ulTransferLength = *pulLength;
553 TRACE(
"CMP_GetServerSideDeviceInstallFlags(%p %lx %p)\n",
554 pulSSDIFlags, ulFlags, hMachine);
556 if (pulSSDIFlags ==
NULL)
562 if (hMachine !=
NULL)
601 TRACE(
"CMP_Init_Detection(%lu)\n", ulMagic);
636 WCHAR szNameBuffer[256];
638 DWORD ulUnknown9 = 0;
642 FIXME(
"CMP_RegisterNotification(%p %p %lu %p)\n",
643 hRecipient, lpvNotificationFilter, ulFlags, phDevNotify);
645 if ((hRecipient ==
NULL) ||
646 (lpvNotificationFilter ==
NULL) ||
647 (phDevNotify ==
NULL))
662 if (pNotifyData ==
NULL)
668 ZeroMemory(szNameBuffer,
sizeof(szNameBuffer));
670 if ((ulFlags & DEVICE_NOTIFY_SERVICE_HANDLE) == DEVICE_NOTIFY_WINDOW_HANDLE)
672 FIXME(
"Register a window\n");
682 FIXME(
"Register window: %S\n", szNameBuffer);
684 else if ((ulFlags & DEVICE_NOTIFY_SERVICE_HANDLE) == DEVICE_NOTIFY_SERVICE_HANDLE)
686 FIXME(
"Register a service\n");
697 FIXME(
"Register service: %S\n", szNameBuffer);
705 (
BYTE*)lpvNotificationFilter,
721 *phDevNotify = (HDEVNOTIFY)pNotifyData;
727 *phDevNotify = (HDEVNOTIFY)
NULL;
748 TRACE(
"CMP_Report_LogOn(%lu %lu)\n", dwMagic, dwProcessId);
758 for (
i = 0;
i < 30;
i++)
788 _In_ HDEVNOTIFY hDevNotify)
794 TRACE(
"CMP_UnregisterNotification(%p)\n", hDevNotify);
798 if ((pNotifyData ==
NULL) ||
837 TRACE(
"CMP_WaitNoPendingInstallEvents(%lu)\n", dwTimeout);
861 TRACE(
"CMP_WaitServicesAvailable(%p)\n", hMachine);
863 if (hMachine !=
NULL)
900 TRACE(
"CM_Add_Empty_Log_Conf(%p %p %lu %lx)\n",
901 plcLogConf, dnDevInst,
Priority, ulFlags);
922 ULONG ulLogConfTag = 0;
927 FIXME(
"CM_Add_Empty_Log_Conf_Ex(%p %p %lu %lx %p)\n",
928 plcLogConf, dnDevInst,
Priority, ulFlags, hMachine);
933 if (plcLogConf ==
NULL)
945 if (hMachine !=
NULL)
952 if (StringTable == 0)
962 if (lpDevInst ==
NULL)
968 &ulLogConfTag, ulFlags);
979 if (pLogConfInfo ==
NULL)
987 pLogConfInfo->
ulType = ulFlags;
988 pLogConfInfo->
ulTag = ulLogConfTag;
990 *plcLogConf = (
LOG_CONF)pLogConfInfo;
1010 TRACE(
"CM_Add_IDA(%p %s %lx)\n",
1027 TRACE(
"CM_Add_IDW(%p %s %lx)\n",
1048 TRACE(
"CM_Add_ID_ExA(%p %s %lx %p)\n",
1049 dnDevInst,
debugstr_a(pszID), ulFlags, hMachine);
1078 TRACE(
"CM_Add_ID_ExW(%p %s %lx %p)\n",
1079 dnDevInst,
debugstr_w(pszID), ulFlags, hMachine);
1093 if (hMachine !=
NULL)
1100 if (StringTable == 0)
1110 if (lpDevInst ==
NULL)
1145 FIXME(
"CM_Add_Range(%I64u %I64u %p %lx)\n",
1146 ullStartValue, ullEndValue, rlh, ulFlags);
1156 if (ullEndValue < ullStartValue)
1172 pRange->
ullEnd = ullEndValue;
1206 TRACE(
"CM_Add_Res_Des(%p %p %lu %p %lu %lx)\n",
1207 prdResDes, lcLogConf, ResourceID, ResourceData, ResourceLen, ulFlags);
1210 ResourceLen, ulFlags,
NULL);
1228 FIXME(
"CM_Add_Res_Des_Ex(%p %p %lu %p %lu %lx %p)\n",
1229 prdResDes, lcLogConf, ResourceID,
1230 ResourceData, ResourceLen, ulFlags, hMachine);
1248 TRACE(
"CM_Connect_MachineA(%s %p)\n",
1251 if (UNCServerName ==
NULL || *UNCServerName == 0)
1276 TRACE(
"CM_Connect_MachineW(%s %p)\n",
1279 if (phMachine ==
NULL)
1285 if (pMachine ==
NULL)
1288 if (UNCServerName ==
NULL || *UNCServerName == 0)
1345 TRACE(
"CM_Create_DevNodeA(%p %s %p %lx)\n",
1346 pdnDevInst,
debugstr_a(pDeviceID), dnParent, ulFlags);
1364 TRACE(
"CM_Create_DevNodeW(%p %s %p %lx)\n",
1365 pdnDevInst,
debugstr_w(pDeviceID), dnParent, ulFlags);
1387 TRACE(
"CM_Create_DevNode_ExA(%p %s %p %lx %p)\n",
1388 pdnDevInst,
debugstr_a(pDeviceID), dnParent, ulFlags, hMachine);
1420 TRACE(
"CM_Create_DevNode_ExW(%p %s %p %lx %p)\n",
1421 pdnDevInst,
debugstr_w(pDeviceID), dnParent, ulFlags, hMachine);
1426 if (pdnDevInst ==
NULL)
1438 if (hMachine !=
NULL)
1445 if (StringTable == 0)
1455 if (lpParentDevInst ==
NULL)
1458 wcscpy(szLocalDeviceID, pDeviceID);
1479 if (*pdnDevInst == 0)
1498 FIXME(
"CM_Create_Range_List(%p %lx)\n",
1509 if (pRangeList ==
NULL)
1540 TRACE(
"CM_Delete_Class_Key(%p %lx)\n",
1541 ClassGuid, ulFlags);
1561 TRACE(
"CM_Delete_Class_Key_Ex(%p %lx %p)\n",
1562 ClassGuid, ulFlags, hMachine);
1564 if (ClassGuid ==
NULL)
1573 if (hMachine !=
NULL)
1611 TRACE(
"CM_Delete_DevNode_Key(%p %lu %lx)\n",
1612 dnDevInst, ulHardwareProfile, ulFlags);
1632 PWSTR pszDevInst, pszKeyPath =
NULL, pszInstancePath =
NULL;
1635 FIXME(
"CM_Delete_DevNode_Key_Ex(%p %lu %lx %p)\n",
1636 dnDevInst, ulHardwareProfile, ulFlags, hMachine);
1647 if (hMachine !=
NULL)
1654 if (StringTable == 0)
1664 if (pszDevInst ==
NULL)
1667 TRACE(
"pszDevInst: %S\n", pszDevInst);
1670 if (pszKeyPath ==
NULL)
1677 if (pszInstancePath ==
NULL)
1692 TRACE(
"pszKeyPath: %S\n", pszKeyPath);
1693 TRACE(
"pszInstancePath: %S\n", pszInstancePath);
1697 FIXME(
"The CM_REGISTRY_USER flag is not supported yet!\n");
1710 ulHardwareProfile = 0;
1728 if (pszInstancePath !=
NULL)
1731 if (pszKeyPath !=
NULL)
1749 FIXME(
"CM_Delete_Range(%I64u %I64u %p %lx)\n",
1750 ullStartValue, ullEndValue, rlh, ulFlags);
1769 TRACE(
"CM_Detect_Resource_Conflict(%p %lu %p %lu %p 0x%lx)\n",
1770 dnDevInst, ResourceID, ResourceData, ResourceLen,
1771 pbConflictDetected, ulFlags);
1797 FIXME(
"CM_Detect_Resource_Conflict_Ex(%p %lu %p %lu %p 0x%lx %p)\n",
1798 dnDevInst, ResourceID, ResourceData, ResourceLen,
1799 pbConflictDetected, ulFlags, hMachine);
1814 TRACE(
"CM_Disable_DevNode(%p %lx)\n",
1815 dnDevInst, ulFlags);
1836 TRACE(
"CM_Disable_DevNode_Ex(%p %lx %p)\n",
1837 dnDevInst, ulFlags, hMachine);
1848 if (hMachine !=
NULL)
1855 if (StringTable == 0)
1865 if (lpDevInst ==
NULL)
1897 TRACE(
"CM_Disconnect_Machine(%p)\n", hMachine);
1900 if (pMachine ==
NULL)
1933 FIXME(
"CM_Dup_Range_List(%p %p %lx)\n",
1934 rlhOld, rlhNew, ulFlags);
1961 ListEntry = &pOldRangeList->
ListHead;
1967 if (pNewRange ==
NULL)
1979 ListEntry = ListEntry->
Flink;
2000 TRACE(
"CM_Enable_DevNode(%p %lx)\n",
2001 dnDevInst, ulFlags);
2022 TRACE(
"CM_Enable_DevNode_Ex(%p %lx %p)\n",
2023 dnDevInst, ulFlags, hMachine);
2034 if (hMachine !=
NULL)
2041 if (StringTable == 0)
2051 if (lpDevInst ==
NULL)
2082 TRACE(
"CM_Enumerate_Classes(%lx %p %lx)\n",
2083 ulClassIndex, ClassGuid, ulFlags);
2105 TRACE(
"CM_Enumerate_Classes_Ex(%lx %p %lx %p)\n",
2106 ulClassIndex, ClassGuid, ulFlags, hMachine);
2108 if (ClassGuid ==
NULL)
2114 if (hMachine !=
NULL)
2167 TRACE(
"CM_Enumerate_EnumeratorsA(%lu %p %p %lx)\n",
2168 ulEnumIndex,
Buffer, pulLength, ulFlags);
2186 TRACE(
"CM_Enumerate_EnumeratorsW(%lu %p %p %lx)\n",
2187 ulEnumIndex,
Buffer, pulLength, ulFlags);
2211 TRACE(
"CM_Enumerate_Enumerators_ExA(%lu %p %p %lx %p)\n",
2212 ulEnumIndex,
Buffer, pulLength, ulFlags, hMachine);
2220 ulOrigLength = *pulLength;
2260 TRACE(
"CM_Enumerate_Enumerators_ExW(%lu %p %p %lx %p)\n",
2261 ulEnumIndex,
Buffer, pulLength, ulFlags, hMachine);
2271 if (hMachine !=
NULL)
2286 PNP_ENUMERATOR_SUBKEYS,
2317 FIXME(
"CM_Find_Range(%p %I64u %lu %I64u %I64u %p %lx)\n",
2318 pullStart, ullStart, ulLength, ullAlignment, ullEnd, rlh, ulFlags);
2341 FIXME(
"CM_First_Range(%p %p %p %p %lx)\n",
2342 rlh, pullStart, pullEnd, preElement, ulFlags);
2349 if (pullStart ==
NULL || pullEnd ==
NULL || preElement ==
NULL)
2371 *pullEnd = pRange->
ullEnd;
2391 TRACE(
"CM_Free_Log_Conf(%lx %lx)\n",
2392 lcLogConfToBeFreed, ulFlags);
2414 TRACE(
"CM_Free_Log_Conf_Ex(%lx %lx %p)\n",
2415 lcLogConfToBeFreed, ulFlags, hMachine);
2427 if (hMachine !=
NULL)
2434 if (StringTable == 0)
2444 if (lpDevInst ==
NULL)
2452 pLogConfInfo->
ulTag,
2475 TRACE(
"CM_Free_Log_Conf_Handle(%lx)\n", lcLogConf);
2500 FIXME(
"CM_Free_Range_List(%p %lx)\n",
2501 RangeList, ulFlags);
2545 TRACE(
"CM_Free_Res_Des(%p %p %lx)\n",
2546 prdResDes, rdResDes, ulFlags);
2563 FIXME(
"CM_Free_Res_Des_Ex(%p %p %lx %p)\n",
2564 prdResDes, rdResDes, ulFlags, hMachine);
2580 FIXME(
"CM_Free_Res_Des_Handle(%p)\n", rdResDes);
2602 FIXME(
"CM_Free_Resource_Conflict_Handle(%p)\n",
2628 TRACE(
"CM_Get_Child(%p %p %lx)\n",
2629 pdnDevInst, dnDevInst, ulFlags);
2653 TRACE(
"CM_Get_Child_Ex(%p %lx %lx %p)\n",
2654 pdnDevInst, dnDevInst, ulFlags, hMachine);
2656 if (pdnDevInst ==
NULL)
2667 if (hMachine !=
NULL)
2674 if (StringTable == 0)
2684 if (lpDevInst ==
NULL)
2690 PNP_GET_CHILD_DEVICE_INSTANCE,
2711 *pdnDevInst = dwIndex;
2728 TRACE(
"CM_Get_Class_Key_NameA(%p %p %p %lx)\n",
2729 ClassGuid, pszKeyName, pulLength, ulFlags);
2747 TRACE(
"CM_Get_Class_Key_NameW(%p %p %p %lx)\n",
2748 ClassGuid, pszKeyName, pulLength, ulFlags);
2772 TRACE(
"CM_Get_Class_Key_Name_ExA(%p %p %p %lx %p)\n",
2773 ClassGuid, pszKeyName, pulLength, ulFlags, hMachine);
2775 if (ClassGuid ==
NULL || pszKeyName ==
NULL || pulLength ==
NULL)
2778 ulOrigLength = *pulLength;
2796 *pulLength =
lstrlenA(pszKeyName) + 1;
2815 TRACE(
"CM_Get_Class_Key_Name_ExW(%p %p %p %lx %p)\n",
2816 ClassGuid, pszKeyName, pulLength, ulFlags, hMachine);
2818 if (ClassGuid ==
NULL || pszKeyName ==
NULL || pulLength ==
NULL)
2850 TRACE(
"CM_Get_Class_NameA(%p %p %p %lx)\n",
2851 ClassGuid,
Buffer, pulLength, ulFlags);
2869 TRACE(
"CM_Get_Class_NameW(%p %p %p %lx)\n",
2870 ClassGuid,
Buffer, pulLength, ulFlags);
2894 TRACE(
"CM_Get_Class_Name_ExA(%p %p %p %lx %p)\n",
2895 ClassGuid,
Buffer, pulLength, ulFlags, hMachine);
2900 ulOrigLength = *pulLength;
2941 TRACE(
"CM_Get_Class_Name_ExW(%p %p %p %lx %p\n",
2942 ClassGuid,
Buffer, pulLength, ulFlags, hMachine);
2955 if (hMachine !=
NULL)
3004 TRACE(
"CM_Get_Class_Registry_PropertyA(%p %lu %p %p %p %lx %p)\n",
3005 ClassGuid, ulProperty, pulRegDataType,
Buffer, pulLength,
3008 if (pulLength ==
NULL)
3011 if (ulProperty < CM_CRP_MIN || ulProperty >
CM_CRP_MAX)
3019 NULL, &ulLength, ulFlags, hMachine);
3025 if (BufferW ==
NULL)
3030 BufferW, &ulLength, ulFlags, hMachine);
3050 if (*pulLength == 0)
3057 Buffer, pulLength, ulFlags, hMachine);
3081 ULONG ulTransferLength = 0;
3084 TRACE(
"CM_Get_Class_Registry_PropertyW(%p %lu %p %p %p %lx %p)\n",
3085 ClassGuid, ulProperty, pulRegDataType,
Buffer, pulLength,
3088 if (ClassGuid ==
NULL || pulLength ==
NULL)
3099 if (ulProperty < CM_CRP_MIN || ulProperty >
CM_CRP_MAX)
3102 if (hMachine !=
NULL)
3114 ulTransferLength = *pulLength;
3135 if (pulRegDataType !=
NULL)
3136 *pulRegDataType =
ulType;
3153 TRACE(
"CM_Get_Depth(%p %lx %lx)\n",
3154 pulDepth, dnDevInst, ulFlags);
3176 TRACE(
"CM_Get_Depth_Ex(%p %lx %lx %p)\n",
3177 pulDepth, dnDevInst, ulFlags, hMachine);
3179 if (pulDepth ==
NULL)
3188 if (hMachine !=
NULL)
3195 if (StringTable == 0)
3205 if (lpDevInst ==
NULL)
3238 TRACE(
"CM_Get_DevNode_Custom_PropertyA(%lx %s %p %p %p %lx)\n",
3239 dnDevInst, pszCustomPropertyName, pulRegDataType,
3240 Buffer, pulLength, ulFlags);
3244 pulLength, ulFlags,
NULL);
3261 TRACE(
"CM_Get_DevNode_Custom_PropertyW(%lx %s %p %p %p %lx)\n",
3262 dnDevInst,
debugstr_w(pszCustomPropertyName), pulRegDataType,
3263 Buffer, pulLength, ulFlags);
3267 pulLength, ulFlags,
NULL);
3291 TRACE(
"CM_Get_DevNode_Custom_Property_ExA(%lx %s %p %p %p %lx %p)\n",
3292 dnDevInst, pszCustomPropertyName, pulRegDataType,
3293 Buffer, pulLength, ulFlags, hMachine);
3298 ulLengthW = *pulLength *
sizeof(
WCHAR);
3305 if (pszPropertyNameW ==
NULL)
3320 if (ulDataType ==
REG_SZ ||
3333 if (*pulLength == 0)
3339 if (ulLengthW <= *pulLength)
3343 *pulLength = ulLengthW;
3350 *pulRegDataType = ulDataType;
3353 MyFree(pszPropertyNameW);
3377 ULONG ulTransferLength;
3380 TRACE(
"CM_Get_DevNode_Custom_Property_ExW(%lx %s %p %p %p %lx %p)\n",
3381 dnDevInst,
debugstr_w(pszCustomPropertyName), pulRegDataType,
3382 Buffer, pulLength, ulFlags, hMachine);
3387 if (pszCustomPropertyName ==
NULL ||
3388 pulLength ==
NULL ||
3395 if (hMachine !=
NULL)
3402 if (StringTable == 0)
3412 if (lpDevInst ==
NULL)
3415 ulTransferLength = *pulLength;
3421 (
LPWSTR)pszCustomPropertyName,
3436 if (pulRegDataType !=
NULL)
3437 *pulRegDataType = ulDataType;
3457 TRACE(
"CM_Get_DevNode_Registry_PropertyA(%lx %lu %p %p %p %lx)\n",
3458 dnDevInst, ulProperty, pulRegDataType,
Buffer, pulLength, ulFlags);
3462 pulLength, ulFlags,
NULL);
3479 TRACE(
"CM_Get_DevNode_Registry_PropertyW(%lx %lu %p %p %p %lx)\n",
3480 dnDevInst, ulProperty, pulRegDataType,
Buffer, pulLength, ulFlags);
3484 pulLength, ulFlags,
NULL);
3507 TRACE(
"CM_Get_DevNode_Registry_Property_ExA(%lx %lu %p %p %p %lx %p)\n",
3508 dnDevInst, ulProperty, pulRegDataType,
Buffer, pulLength,
3514 LengthW = *pulLength *
sizeof(
WCHAR);
3529 if (ulDataType ==
REG_SZ ||
3542 if (*pulLength == 0)
3548 if (LengthW <= *pulLength)
3552 *pulLength = LengthW;
3559 *pulRegDataType = ulDataType;
3586 ULONG ulTransferLength = 0;
3588 TRACE(
"CM_Get_DevNode_Registry_Property_ExW(%lx %lu %p %p %p %lx %p)\n",
3589 dnDevInst, ulProperty, pulRegDataType,
Buffer, pulLength,
3595 if (ulProperty < CM_DRP_MIN || ulProperty >
CM_DRP_MAX)
3602 if (pulLength ==
NULL)
3605 if (*pulLength == 0)
3611 if (hMachine !=
NULL)
3618 if (StringTable == 0)
3628 if (lpDevInst ==
NULL)
3631 ulTransferLength = *pulLength;
3652 if (pulRegDataType !=
NULL)
3653 *pulRegDataType = ulDataType;
3671 TRACE(
"CM_Get_DevNode_Status(%p %p %lx %lx)\n",
3672 pulStatus, pulProblemNumber, dnDevInst, ulFlags);
3696 TRACE(
"CM_Get_DevNode_Status_Ex(%p %p %lx %lx %p)\n",
3697 pulStatus, pulProblemNumber, dnDevInst, ulFlags, hMachine);
3699 if (pulStatus ==
NULL || pulProblemNumber ==
NULL)
3708 if (hMachine !=
NULL)
3715 if (StringTable == 0)
3725 if (lpDevInst ==
NULL)
3757 TRACE(
"CM_Get_Device_IDA(%lx %p %lu %lx)\n",
3758 dnDevInst,
Buffer, BufferLen, ulFlags);
3775 TRACE(
"CM_Get_Device_IDW(%lx %p %lu %lx)\n",
3776 dnDevInst,
Buffer, BufferLen, ulFlags);
3797 TRACE(
"CM_Get_Device_ID_ExA(%lx %p %lu %lx %p)\n",
3798 dnDevInst,
Buffer, BufferLen, ulFlags, hMachine);
3839 TRACE(
"CM_Get_Device_ID_ExW(%lx %p %lu %lx %p)\n",
3840 dnDevInst,
Buffer, BufferLen, ulFlags, hMachine);
3851 if (hMachine !=
NULL)
3854 if (StringTable ==
NULL)
3884 TRACE(
"CM_Get_Device_ID_ListA(%p %p %lu %lx)\n",
3885 pszFilter,
Buffer, BufferLen, ulFlags);
3903 TRACE(
"CM_Get_Device_ID_ListW(%p %p %lu %lx)\n",
3904 pszFilter,
Buffer, BufferLen, ulFlags);
3927 TRACE(
"CM_Get_Device_ID_List_ExA(%p %p %lu %lx %p)\n",
3928 pszFilter,
Buffer, BufferLen, ulFlags, hMachine);
3931 if (BufferW ==
NULL)
3934 if (pszFilter ==
NULL)
3991 TRACE(
"CM_Get_Device_ID_List_ExW(%p %p %lu %lx %p)\n",
3992 pszFilter,
Buffer, BufferLen, ulFlags, hMachine);
4000 if (hMachine !=
NULL)
4042 TRACE(
"CM_Get_Device_ID_List_SizeA(%p %s %lx)\n",
4059 TRACE(
"CM_Get_Device_ID_List_SizeW(%p %s %lx)\n",
4080 FIXME(
"CM_Get_Device_ID_List_Size_ExA(%p %s %lx %p)\n",
4081 pulLen,
debugstr_a(pszFilter), ulFlags, hMachine);
4083 if (pszFilter ==
NULL)
4121 FIXME(
"CM_Get_Device_ID_List_Size_ExW(%p %s %lx %p)\n",
4122 pulLen,
debugstr_w(pszFilter), ulFlags, hMachine);
4130 if (hMachine !=
NULL)
4171 TRACE(
"CM_Get_Device_ID_Size(%p %lx %lx)\n",
4172 pulLen, dnDevInst, ulFlags);
4192 TRACE(
"CM_Get_Device_ID_Size_Ex(%p %lx %lx %p)\n",
4193 pulLen, dnDevInst, ulFlags, hMachine);
4204 if (hMachine !=
NULL)
4207 if (StringTable ==
NULL)
4217 if (DeviceId ==
NULL)
4241 TRACE(
"CM_Get_Device_Interface_AliasA(%p %p %p %p %lx)\n",
4242 pszDeviceInterface, AliasInterfaceGuid,
4243 pszAliasDeviceInterface, pulLength, ulFlags);
4246 AliasInterfaceGuid, pszAliasDeviceInterface, pulLength,
4263 TRACE(
"CM_Get_Device_Interface_AliasW(%p %p %p %p %lx)\n",
4264 pszDeviceInterface, AliasInterfaceGuid,
4265 pszAliasDeviceInterface, pulLength, ulFlags);
4268 AliasInterfaceGuid, pszAliasDeviceInterface, pulLength,
4290 TRACE(
"CM_Get_Device_Interface_Alias_ExA(%p %p %p %p %lx %p)\n",
4291 pszDeviceInterface, AliasInterfaceGuid,
4292 pszAliasDeviceInterface, pulLength, ulFlags, hMachine);
4294 if (pszDeviceInterface ==
NULL ||
4295 AliasInterfaceGuid ==
NULL ||
4296 pszAliasDeviceInterface ==
NULL ||
4306 pszAliasDeviceInterfaceW =
MyMalloc(*pulLength *
sizeof(
WCHAR));
4307 if (pszAliasDeviceInterfaceW ==
NULL)
4315 pszAliasDeviceInterfaceW,
4324 pszAliasDeviceInterfaceW,
4326 pszAliasDeviceInterface,
4333 if (pszAliasDeviceInterfaceW !=
NULL)
4334 MyFree(pszAliasDeviceInterfaceW);
4336 if (pszDeviceInterfaceW !=
NULL)
4337 MyFree(pszDeviceInterfaceW);
4357 ULONG ulTransferLength;
4360 TRACE(
"CM_Get_Device_Interface_Alias_ExW(%p %p %p %p %lx %p)\n",
4361 pszDeviceInterface, AliasInterfaceGuid,
4362 pszAliasDeviceInterface, pulLength, ulFlags, hMachine);
4364 if (pszDeviceInterface ==
NULL ||
4365 AliasInterfaceGuid ==
NULL ||
4366 pszAliasDeviceInterface ==
NULL ||
4373 if (hMachine !=
NULL)
4385 ulTransferLength = *pulLength;
4390 (
LPWSTR)pszDeviceInterface,
4392 pszAliasDeviceInterface,
4419 TRACE(
"CM_Get_Device_Interface_ListA(%s %s %p %lu 0x%08lx)\n",
4421 Buffer, BufferLen, ulFlags);
4440 TRACE(
"CM_Get_Device_Interface_ListW(%s %s %p %lu 0x%08lx)\n",
4442 Buffer, BufferLen, ulFlags);
4466 TRACE(
"CM_Get_Device_Interface_List_ExA(%s %s %p %lu 0x%08lx %p)\n",
4468 Buffer, BufferLen, ulFlags, hMachine);
4474 if (pDeviceID !=
NULL)
4481 if (BufferW ==
NULL)
4488 BufferW, BufferLen, ulFlags,
4504 if (BufferW !=
NULL)
4507 if (pDeviceIdW !=
NULL)
4531 TRACE(
"CM_Get_Device_Interface_List_ExW(%s %s %p %lu 0x%08lx %p)\n",
4533 Buffer, BufferLen, ulFlags, hMachine);
4542 if (hMachine !=
NULL)
4587 TRACE(
"CM_Get_Device_Interface_List_SizeA(%p %p %s 0x%08lx)\n",
4591 pDeviceID, ulFlags,
NULL);
4606 TRACE(
"CM_Get_Device_Interface_List_SizeW(%p %p %s 0x%08lx)\n",
4610 pDeviceID, ulFlags,
NULL);
4629 TRACE(
"CM_Get_Device_Interface_List_Size_ExA(%p %p %s 0x%08lx %p)\n",
4635 if (pDeviceID !=
NULL)
4644 pDeviceIdW, ulFlags, hMachine);
4646 if (pDeviceIdW !=
NULL)
4668 TRACE(
"CM_Get_Device_Interface_List_Size_ExW(%p %p %s 0x%08lx %p)\n",
4677 if (hMachine !=
NULL)
4719 TRACE(
"CM_Get_First_Log_Conf(%p %lx %lx)\n",
4720 plcLogConf, dnDevInst, ulFlags);
4744 FIXME(
"CM_Get_First_Log_Conf_Ex(%p %lx %lx %p)\n",
4745 plcLogConf, dnDevInst, ulFlags, hMachine);
4756 if (hMachine !=
NULL)
4763 if (StringTable == 0)
4773 if (lpDevInst ==
NULL)
4796 if (pLogConfInfo ==
NULL)
4801 pLogConfInfo->
ulType = ulFlags;
4804 *plcLogConf = (
LOG_CONF)pLogConfInfo;
4820 TRACE(
"CM_Get_Global_State(%p %lx)\n",
4840 TRACE(
"CM_Get_Global_State_Ex(%p %lx %p)\n",
4841 pulState, ulFlags, hMachine);
4843 if (pulState ==
NULL)
4849 if (hMachine !=
NULL)
4886 TRACE(
"CM_Get_HW_Prof_FlagsA(%s %lu %p %lx)\n",
4887 debugstr_a(szDevInstName), ulHardwareProfile, pulValue, ulFlags);
4890 pulValue, ulFlags,
NULL);
4905 TRACE(
"CM_Get_HW_Prof_FlagsW(%s %lu %p %lx)\n",
4906 debugstr_w(szDevInstName), ulHardwareProfile, pulValue, ulFlags);
4909 pulValue, ulFlags,
NULL);
4928 TRACE(
"CM_Get_HW_Prof_Flags_ExA(%s %lu %p %lx %p)\n",
4929 debugstr_a(szDevInstName), ulHardwareProfile, pulValue, ulFlags, hMachine);
4931 if (szDevInstName !=
NULL)
4938 pulValue, ulFlags, hMachine);
4940 if (pszDevIdW !=
NULL)
4962 FIXME(
"CM_Get_HW_Prof_Flags_ExW(%s %lu %p %lx %p)\n",
4963 debugstr_w(szDevInstName), ulHardwareProfile, pulValue, ulFlags, hMachine);
4965 if ((szDevInstName ==
NULL) || (pulValue ==
NULL))
4973 if (hMachine !=
NULL)
4988 ulHardwareProfile, pulValue,
NULL,
NULL, 0, 0);
5010 TRACE(
"CM_Get_Hardware_Profile_InfoA(%lu %p %lx)\n",
5011 ulIndex, pHWProfileInfo, ulFlags);
5028 TRACE(
"CM_Get_Hardware_Profile_InfoW(%lu %p %lx)\n",
5029 ulIndex, pHWProfileInfo, ulFlags);
5050 TRACE(
"CM_Get_Hardware_Profile_Info_ExA(%lu %p %lx %p)\n",
5051 ulIndex, pHWProfileInfo, ulFlags, hMachine);
5053 if (pHWProfileInfo ==
NULL)
5061 pHWProfileInfo->HWPI_dwFlags = LocalProfileInfo.
HWPI_dwFlags;
5067 pHWProfileInfo->HWPI_szFriendlyName,
5092 TRACE(
"CM_Get_Hardware_Profile_Info_ExW(%lu %p %lx %p)\n",
5093 ulIndex, pHWProfileInfo, ulFlags, hMachine);
5095 if (pHWProfileInfo ==
NULL)
5101 if (hMachine !=
NULL)
5138 TRACE(
"CM_Get_Log_Conf_Priority(%p %p %lx)\n",
5139 lcLogConf, pPriority, ulFlags);
5162 FIXME(
"CM_Get_Log_Conf_Priority_Ex(%p %p %lx %p)\n",
5163 lcLogConf, pPriority, ulFlags, hMachine);
5169 if (pPriority ==
NULL)
5175 if (hMachine !=
NULL)
5182 if (StringTable == 0)
5192 if (lpDevInst ==
NULL)
5200 pLogConfInfo->
ulTag,
5224 TRACE(
"CM_Get_Next_Log_Conf(%p %p %lx)\n",
5225 plcLogConf, lcLogConf, ulFlags);
5250 FIXME(
"CM_Get_Next_Log_Conf_Ex(%p %p %lx %p)\n",
5251 plcLogConf, lcLogConf, ulFlags, hMachine);
5263 if (hMachine !=
NULL)
5270 if (StringTable == 0)
5280 if (lpDevInst ==
NULL)
5288 pLogConfInfo->
ulTag,
5304 if (pNewLogConfInfo ==
NULL)
5310 pNewLogConfInfo->
ulTag = ulNewTag;
5312 *plcLogConf = (
LOG_CONF)pNewLogConfInfo;
5331 TRACE(
"CM_Get_Next_Res_Des(%p %p %lu %p %lx)\n",
5332 prdResDes, rdResDes, ForResource, pResourceID, ulFlags);
5335 pResourceID, ulFlags,
NULL);
5355 ULONG ulLogConfTag, ulLogConfType, ulResDesTag;
5356 ULONG ulNextResDesType = 0, ulNextResDesTag = 0;
5361 FIXME(
"CM_Get_Next_Res_Des_Ex(%p %p %lu %p %lx %p)\n",
5362 prdResDes, rdResDes, ForResource, pResourceID, ulFlags, hMachine);
5364 if (prdResDes ==
NULL)
5369 FIXME(
"LogConf found!\n");
5373 ulResDesTag = (
ULONG)-1;
5377 FIXME(
"ResDes found!\n");
5394 if (hMachine !=
NULL)
5401 if (StringTable == 0)
5411 if (lpDevInst ==
NULL)
5436 *pResourceID = ulNextResDesType;
5441 if (pNewResDesInfo ==
NULL)
5451 *prdResDes = (
RES_DES)pNewResDesInfo;
5468 TRACE(
"CM_Get_Parent(%p %p %lx)\n",
5469 pdnDevInst, dnDevInst, ulFlags);
5493 TRACE(
"CM_Get_Parent_Ex(%p %lx %lx %p)\n",
5494 pdnDevInst, dnDevInst, ulFlags, hMachine);
5496 if (pdnDevInst ==
NULL)
5507 if (hMachine !=
NULL)
5514 if (StringTable == 0)
5524 if (lpDevInst ==
NULL)
5530 PNP_GET_PARENT_DEVICE_INSTANCE,
5551 *pdnDevInst = dwIndex;
5568 TRACE(
"CM_Get_Res_Des_Data(%p %p %lu %lx)\n",
5569 rdResDes,
Buffer, BufferLen, ulFlags);
5587 FIXME(
"CM_Get_Res_Des_Data_Ex(%p %p %lu %lx %p)\n",
5588 rdResDes,
Buffer, BufferLen, ulFlags, hMachine);
5604 TRACE(
"CM_Get_Res_Des_Data_Size(%p %p %lx)\n",
5622 TRACE(
"CM_Get_Res_Des_Data_Size_Ex(%p %p %lx %p)\n",
5623 pulSize, rdResDes, ulFlags, hMachine);
5640 FIXME(
"CM_Get_Resource_Conflict_Count(%p %p)\n",
5641 clConflictList, pulCount);
5647 if (pulCount ==
NULL)
5666 FIXME(
"CM_Get_Resource_Conflict_CountA(%p %lu %p)\n",
5667 clConflictList, ulIndex, pConflictDetails);
5683 FIXME(
"CM_Get_Resource_Conflict_CountW(%p %lu %p)\n",
5684 clConflictList, ulIndex, pConflictDetails);
5700 TRACE(
"CM_Get_Sibling(%p %p %lx)\n",
5701 pdnDevInst, dnDevInst, ulFlags);
5725 TRACE(
"CM_Get_Sibling_Ex(%p %lx %lx %p)\n",
5726 pdnDevInst, dnDevInst, ulFlags, hMachine);
5728 if (pdnDevInst ==
NULL)
5739 if (hMachine !=
NULL)
5746 if (StringTable == 0)
5756 if (lpDevInst ==
NULL)
5762 PNP_GET_SIBLING_DEVICE_INSTANCE,
5783 *pdnDevInst = dwIndex;
5796 TRACE(
"CM_Get_Version()\n");
5814 TRACE(
"CM_Get_Version_Ex(%p)\n", hMachine);
5816 if (hMachine !=
NULL)
5856 FIXME(
"CM_Intersect_Range_List(%p %p %p %lx)\n",
5857 rlhOld1, rlhOld2, rlhNew, ulFlags);
5874 FIXME(
"CM_Invert_Range_List(%p %p %I64u %lx)\n",
5875 rlhOld, rlhNew, ullMaxValue, ulFlags);
5889 TRACE(
"CM_Is_Dock_Station_Present(%p)\n",
5908 TRACE(
"CM_Is_Dock_Station_Present_Ex(%p %p)\n",
5909 pbPresent, hMachine);
5911 if (pbPresent ==
NULL)
5916 if (hMachine !=
NULL)
5951 TRACE(
"CM_Is_Version_Available(%hu)\n",
5968 WORD wServerVersion;
5971 TRACE(
"CM_Is_Version_Available_Ex(%hu %p)\n",
5972 wVersion, hMachine);
5974 if (wVersion <= 0x400)
5977 if (hMachine !=
NULL)
6002 return (wServerVersion >= wVersion);
6016 TRACE(
"CM_Locate_DevNodeA(%p %s %lx)\n",
6033 TRACE(
"CM_Locate_DevNodeW(%p %s %lx)\n",
6054 TRACE(
"CM_Locate_DevNode_ExA(%p %s %lx %p)\n",
6055 pdnDevInst,
debugstr_a(pDeviceID), ulFlags, hMachine);
6057 if (pDeviceID !=
NULL)
6065 if (pDevIdW !=
NULL)
6088 TRACE(
"CM_Locate_DevNode_ExW(%p %s %lx %p)\n",
6089 pdnDevInst,
debugstr_w(pDeviceID), ulFlags, hMachine);
6091 if (pdnDevInst ==
NULL)
6097 if (hMachine !=
NULL)
6104 if (StringTable == 0)
6115 lstrcpyW(DeviceIdBuffer, pDeviceID);
6151 if (*pdnDevInst == -1)
6170 FIXME(
"CM_Merge_Range_List(%p %p %p %lx)\n",
6171 rlhOld1, rlhOld2, rlhNew, ulFlags);
6190 TRACE(
"CM_Modify_Res_Des(%p %p %lx %p %lu %lx)\n",
6191 prdResDes, rdResDes, ResourceID, ResourceData,
6192 ResourceLen, ulFlags);
6195 ResourceLen, ulFlags,
NULL);
6213 FIXME(
"CM_Modify_Res_Des_Ex(%p %p %lx %p %lu %lx %p)\n",
6214 prdResDes, rdResDes, ResourceID, ResourceData,
6215 ResourceLen, ulFlags, hMachine);
6231 TRACE(
"CM_Move_DevNode(%lx %lx %lx)\n",
6232 dnFromDevInst, dnToDevInst, ulFlags);
6255 FIXME(
"CM_Move_DevNode_Ex(%lx %lx %lx %p)\n",
6256 dnFromDevInst, dnToDevInst, ulFlags, hMachine);
6261 if (dnFromDevInst == 0 || dnToDevInst == 0)
6267 if (hMachine !=
NULL)
6274 if (StringTable == 0)
6284 if (lpFromDevInst ==
NULL)
6288 if (lpToDevInst ==
NULL)
6325 FIXME(
"CM_Next_Range(%p %p %p %lx)\n",
6326 preElement, pullStart, pullEnd, ulFlags);
6333 if (pullStart ==
NULL || pullEnd ==
NULL)
6357 *pullEnd = pRange->
ullEnd;
6381 TRACE(
"CM_Open_Class_KeyA(%p %s %lx %lx %p %lx)\n",
6403 TRACE(
"CM_Open_Class_KeyW(%p %s %lx %lx %p %lx)\n",
6429 TRACE(
"CM_Open_Class_Key_ExA(%p %s %lx %lx %p %lx %p)\n",
6431 samDesired,
Disposition, phkClass, ulFlags, hMachine);
6433 if (pszClassName !=
NULL)
6442 if (pszClassNameW !=
NULL)
6465 DWORD dwDisposition;
6469 TRACE(
"CM_Open_Class_Key_ExW(%p %s %lx %lx %p %lx %p)\n",
6471 samDesired,
Disposition, phkClass, ulFlags, hMachine);
6479 if (phkClass ==
NULL)
6485 pszClassName !=
NULL)
6488 if (hMachine ==
NULL)
6509 if (pClassGuid !=
NULL)
6525 NULL, phkClass, &dwDisposition);
6534 if (pClassGuid !=
NULL)
6543 if (pszClassName !=
NULL)
6566 TRACE(
"CM_Open_DevNode_Key(%lx %lx %lu %lx %p %lx)\n",
6567 dnDevNode, samDesired, ulHardwareProfile,
Disposition, phkDevice, ulFlags);
6592 DWORD dwDisposition;
6596 TRACE(
"CM_Open_DevNode_Key_Ex(%lx %lx %lu %lx %p %lx %p)\n",
6597 dnDevNode, samDesired, ulHardwareProfile,
Disposition, phkDevice, ulFlags, hMachine);
6599 if (phkDevice ==
NULL)
6613 if (hMachine !=
NULL)
6620 if (StringTable == 0)
6630 if (pszDevInst ==
NULL)
6633 TRACE(
"pszDevInst: %S\n", pszDevInst);
6636 if (pszKeyPath ==
NULL)
6643 if (pszInstancePath ==
NULL)
6658 TRACE(
"pszKeyPath: %S\n", pszKeyPath);
6659 TRACE(
"pszInstancePath: %S\n", pszInstancePath);
6662 wcscat(pszKeyPath, pszInstancePath);
6664 TRACE(
"pszKeyPath: %S\n", pszKeyPath);
6666 if (hMachine ==
NULL)
6712 if (pszInstancePath !=
NULL)
6715 if (pszKeyPath !=
NULL)
6734 TRACE(
"CM_Query_And_Remove_SubTreeA(%lx %p %p %lu %lx)\n",
6735 dnAncestor, pVetoType, pszVetoName, ulNameLength, ulFlags);
6738 ulNameLength, ulFlags,
NULL);
6754 TRACE(
"CM_Query_And_Remove_SubTreeW(%lx %p %p %lu %lx)\n",
6755 dnAncestor, pVetoType, pszVetoName, ulNameLength, ulFlags);
6758 ulNameLength, ulFlags,
NULL);
6778 TRACE(
"CM_Query_And_Remove_SubTree_ExA(%lx %p %p %lu %lx %p)\n",
6779 dnAncestor, pVetoType, pszVetoName, ulNameLength,
6782 if (pszVetoName ==
NULL && ulNameLength == 0)
6786 if (lpLocalVetoName ==
NULL)
6790 ulNameLength, ulFlags, hMachine);
6828 TRACE(
"CM_Query_And_Remove_SubTree_ExW(%lx %p %p %lu %lx %p)\n",
6829 dnAncestor, pVetoType, pszVetoName, ulNameLength,
6832 if (dnAncestor == 0)
6838 if (pszVetoName ==
NULL && ulNameLength == 0)
6841 if (hMachine !=
NULL)
6848 if (StringTable == 0)
6858 if (lpDevInst ==
NULL)
6892 TRACE(
"CM_Query_Arbitrator_Free_Data(%p %lu %lx %lu 0x%08lx)\n",
6893 pData, DataLen, dnDevInst, ResourceID, ulFlags);
6896 ResourceID, ulFlags,
NULL);
6918 TRACE(
"CM_Query_Arbitrator_Free_Data_Ex(%p %lu %lx %lu 0x%08lx %p)\n",
6919 pData, DataLen, dnDevInst, ResourceID, ulFlags, hMachine);
6930 if (hMachine !=
NULL)
6937 if (StringTable == 0)
6947 if (lpDevInst ==
NULL)
6980 TRACE(
"CM_Query_Arbitrator_Free_Size(%p %lu %lx 0x%08lx)\n",
6981 pulSize, dnDevInst,ResourceID, ulFlags);
7005 TRACE(
"CM_Query_Arbitrator_Free_Size_Ex(%p %lu %lx 0x%08lx %p)\n",
7006 pulSize, dnDevInst,ResourceID, ulFlags, hMachine);
7017 if (hMachine !=
NULL)
7024 if (StringTable == 0)
7034 if (lpDevInst ==
NULL)
7066 TRACE(
"CM_Query_Remove_SubTree(%lx %lx)\n",
7067 dnAncestor, ulFlags);
7085 TRACE(
"CM_Query_Remove_SubTree_Ex(%lx %lx %p)\n",
7086 dnAncestor, ulFlags, hMachine);
7110 ULONG ulBufferLength;
7114 FIXME(
"CM_Query_Resource_Conflict_List(%p %lx %lu %p %lu %lx %p)\n",
7115 pclConflictList, dnDevInst, ResourceID, ResourceData,
7116 ResourceLen, ulFlags, hMachine);
7124 if (pclConflictList ==
NULL ||
7125 ResourceData ==
NULL ||
7129 if (ResourceID == 0)
7132 *pclConflictList = 0;
7134 if (hMachine !=
NULL)
7141 if (StringTable == 0)
7151 if (lpDevInst ==
NULL)
7155 if (pConflictData ==
NULL)
7164 pConflictBuffer =
MyMalloc(ulBufferLength);
7165 if (pConflictBuffer ==
NULL)
7176 (
PBYTE)ResourceData,
7178 (
PBYTE)pConflictBuffer,
7199 if (pConflictBuffer !=
NULL)
7202 if (pConflictData !=
NULL)
7219 TRACE(
"CM_Reenumerate_DevNode(%lx %lx)\n",
7220 dnDevInst, ulFlags);
7240 FIXME(
"CM_Reenumerate_DevNode_Ex(%lx %lx %p)\n",
7241 dnDevInst, ulFlags, hMachine);
7249 if (hMachine !=
NULL)
7256 if (StringTable == 0)
7266 if (lpDevInst ==
NULL)
7272 PNP_DEVINST_REENUMERATE,
7296 TRACE(
"CM_Register_Device_Driver(%lx 0x%08lx)\n",
7297 dnDevInst, ulFlags);
7318 TRACE(
"CM_Register_Device_Driver_Ex(%lx 0x%08lx %p)\n",
7319 dnDevInst, ulFlags, hMachine);
7327 if (hMachine !=
NULL)
7334 if (StringTable == 0)
7344 if (lpDevInst ==
NULL)
7376 TRACE(
"CM_Register_Device_InterfaceA(%lx %s %s %p %p %lx)\n",
7378 pszReference, pszDeviceInterface, pulLength, ulFlags);
7381 pszReference, pszDeviceInterface,
7382 pulLength, ulFlags,
NULL);
7399 TRACE(
"CM_Register_Device_InterfaceW(%lx %s %s %p %p %lx)\n",
7401 debugstr_w(pszReference), pszDeviceInterface, pulLength, ulFlags);
7404 pszReference, pszDeviceInterface,
7405 pulLength, ulFlags,
NULL);
7424 LPWSTR pszDeviceInterfaceW;
7428 TRACE(
"CM_Register_Device_Interface_ExA(%lx %s %s %p %p %lx %p)\n",
7430 pszDeviceInterface, pulLength, ulFlags, hMachine);
7432 if (pulLength ==
NULL || pszDeviceInterface ==
NULL)
7435 if (pszReference !=
NULL)
7441 ulLength = *pulLength;
7444 if (pszDeviceInterfaceW ==
NULL)
7453 pszDeviceInterfaceW,
7461 pszDeviceInterfaceW,
7470 *pulLength = ulLength;
7473 if (pszDeviceInterfaceW !=
NULL)
7476 if (pszReferenceW !=
NULL)
7500 ULONG ulTransferLength;
7503 TRACE(
"CM_Register_Device_Interface_ExW(%lx %s %s %p %p %lx %p)\n",
7505 pszDeviceInterface, pulLength, ulFlags, hMachine);
7511 pszDeviceInterface ==
NULL ||
7518 if (hMachine !=
NULL)
7525 if (StringTable == 0)
7535 if (lpDevInst ==
NULL)
7538 ulTransferLength = *pulLength;
7572 TRACE(
"CM_Remove_SubTree(%lx %lx)\n",
7573 dnAncestor, ulFlags);
7591 TRACE(
"CM_Remove_SubTree_Ex(%lx %lx %p)\n",
7592 dnAncestor, ulFlags, hMachine);
7610 TRACE(
"CM_Request_Device_EjectA(%lx %p %p %lu %lx)\n",
7611 dnDevInst, pVetoType, pszVetoName, ulNameLength, ulFlags);
7614 ulNameLength, ulFlags,
NULL);
7630 TRACE(
"CM_Request_Device_EjectW(%lx %p %p %lu %lx)\n",
7631 dnDevInst, pVetoType, pszVetoName, ulNameLength, ulFlags);
7634 ulNameLength, ulFlags,
NULL);
7654 TRACE(
"CM_Request_Device_Eject_ExA(%lx %p %p %lu %lx %p)\n",
7655 dnDevInst, pVetoType, pszVetoName, ulNameLength, ulFlags, hMachine);
7657 if (ulNameLength != 0)
7659 if (pszVetoName ==
NULL)
7663 if (lpLocalVetoName ==
NULL)
7668 ulNameLength, ulFlags, hMachine);
7706 TRACE(
"CM_Request_Device_Eject_ExW(%lx %p %p %lu %lx %p)\n",
7707 dnDevInst, pVetoType, pszVetoName, ulNameLength, ulFlags, hMachine);
7715 if (pszVetoName ==
NULL && ulNameLength != 0)
7720 if (ulNameLength == 0)
7723 if (hMachine !=
NULL)
7730 if (StringTable == 0)
7740 if (lpDevInst ==
NULL)
7769 TRACE(
"CM_Request_Eject_PC()\n");
7786 TRACE(
"CM_Request_Eject_PC_Ex(%p)\n", hMachine);
7788 if (hMachine !=
NULL)
7822 TRACE(
"CM_Run_Detection(%lx)\n", ulFlags);
7840 TRACE(
"CM_Run_Detection_Ex(%lx %p)\n",
7849 if (hMachine !=
NULL)
7893 TRACE(
"CM_Set_Class_Registry_PropertyA(%p %lx %p %lu %lx %p)\n",
7894 ClassGuid, ulProperty,
Buffer, ulLength, ulFlags, hMachine);
7896 if (ClassGuid ==
NULL)
7940 ulLength *
sizeof(
WCHAR),
7980 ULONG SecurityDescriptorSize = 0;
7983 TRACE(
"CM_Set_Class_Registry_PropertyW(%p %lx %p %lu %lx %p)\n",
7984 ClassGuid, ulProperty,
Buffer, ulLength, ulFlags, hMachine);
7986 if (ClassGuid ==
NULL)
8003 if (hMachine !=
NULL)
8025 &pSecurityDescriptor,
8026 &SecurityDescriptorSize))
8028 ERR(
"ConvertStringSecurityDescriptorToSecurityDescriptorW() failed (Error %lu)\n",
GetLastError());
8033 ulLength = SecurityDescriptorSize;
8056 if (pSecurityDescriptor)
8073 TRACE(
"CM_Set_DevNode_Problem(%lx %lx %lx)\n",
8074 dnDevInst, ulProblem, ulFlags);
8096 TRACE(
"CM_Set_DevNode_Problem_Ex(%lx %lx %lx %p)\n",
8097 dnDevInst, ulProblem, ulFlags, hMachine);
8105 if (hMachine !=
NULL)
8112 if (StringTable == 0)
8122 if (lpDevInst ==
NULL)
8154 TRACE(
"CM_Set_DevNode_Registry_PropertyA(%lx %lu %p %lx %lx)\n",
8155 dnDevInst, ulProperty,
Buffer, ulLength, ulFlags);
8175 TRACE(
"CM_Set_DevNode_Registry_PropertyW(%lx %lu %p %lx %lx)\n",
8176 dnDevInst, ulProperty,
Buffer, ulLength, ulFlags);
8201 FIXME(
"CM_Set_DevNode_Registry_Property_ExA(%lx %lu %p %lx %lx %p)\n",
8202 dnDevInst, ulProperty,
Buffer, ulLength, ulFlags, hMachine);
8207 if (ulProperty < CM_DRP_MIN || ulProperty >
CM_DRP_MAX)
8246 ulLength *
sizeof(
WCHAR),
8289 TRACE(
"CM_Set_DevNode_Registry_Property_ExW(%lx %lu %p %lx %lx %p)\n",
8290 dnDevInst, ulProperty,
Buffer, ulLength, ulFlags, hMachine);
8295 if (ulProperty < CM_DRP_MIN || ulProperty >
CM_DRP_MAX)
8304 if (hMachine !=
NULL)
8311 if (StringTable == 0)
8321 if (lpDevInst ==
NULL)
8356 TRACE(
"CM_Set_HW_Prof(%lu %lx)\n",
8357 ulHardwareProfile, ulFlags);
8376 TRACE(
"CM_Set_HW_Prof_Ex(%lu %lx %p)\n",
8377 ulHardwareProfile, ulFlags, hMachine);
8385 if (hMachine !=
NULL)
8422 TRACE(
"CM_Set_HW_Prof_FlagsA(%s %lu %lu %lx)\n",
8423 debugstr_a(szDevInstName), ulConfig, ulValue, ulFlags);
8441 TRACE(
"CM_Set_HW_Prof_FlagsW(%s %lu %lu %lx)\n",
8442 debugstr_w(szDevInstName), ulConfig, ulValue, ulFlags);
8464 TRACE(
"CM_Set_HW_Prof_Flags_ExA(%s %lu %lu %lx %p)\n",
8465 debugstr_a(szDevInstName), ulConfig, ulValue, ulFlags, hMachine);
8467 if (szDevInstName !=
NULL)
8476 if (pszDevIdW !=
NULL)
8498 FIXME(
"CM_Set_HW_Prof_Flags_ExW(%s %lu %lu %lx %p)\n",
8499 debugstr_w(szDevInstName), ulConfig, ulValue, ulFlags, hMachine);
8501 if (szDevInstName ==
NULL)
8509 if (hMachine !=
NULL)
8524 ulConfig, &ulValue,
NULL,
NULL, 0, 0);
8545 TRACE(
"CM_Setup_DevNode(%lx %lx)\n",
8546 dnDevInst, ulFlags);
8567 FIXME(
"CM_Setup_DevNode_Ex(%lx %lx %p)\n",
8568 dnDevInst, ulFlags, hMachine);
8579 if (hMachine !=
NULL)
8586 if (StringTable == 0)
8596 if (lpDevInst ==
NULL)
8633 FIXME(
"CM_Test_Range_Available(%I64u %I64u %p %lx)\n",
8634 ullStartValue, ullEndValue, rlh, ulFlags);
8644 if (ullStartValue > ullEndValue)
8657 if ((ullStartValue >= pRange->
ullStart) && (ullStartValue <= pRange->ullEnd))
8664 if ((ullEndValue >= pRange->
ullStart) && (ullEndValue <= pRange->ullEnd))
8671 if ((ullStartValue <= pRange->ullStart) && (ullEndValue >= pRange->
ullEnd))
8677 ListEntry = ListEntry->
Flink;
8696 TRACE(
"CM_Uninstall_DevNode(%lx %lx)\n",
8697 dnPhantom, ulFlags);
8718 TRACE(
"CM_Uninstall_DevNode_Ex(%lx %lx %p)\n",
8719 dnPhantom, ulFlags, hMachine);
8727 if (hMachine !=
NULL)
8734 if (StringTable == 0)
8744 if (lpDevInst ==
NULL)
8772 TRACE(
"CM_Unregister_Device_InterfaceA(%s %lx)\n",
8789 TRACE(
"CM_Unregister_Device_InterfaceW(%s %lx)\n",
8810 TRACE(
"CM_Unregister_Device_Interface_ExA(%s %lx %p)\n",
8811 debugstr_a(pszDeviceInterface), ulFlags, hMachine);
8813 if (pszDeviceInterface ==
NULL)
8822 if (pszDeviceInterfaceW !=
NULL)
8823 MyFree(pszDeviceInterfaceW);
8842 TRACE(
"CM_Unregister_Device_Interface_ExW(%s %lx %p)\n",
8843 debugstr_w(pszDeviceInterface), ulFlags, hMachine);
8845 if (pszDeviceInterface ==
NULL)
8851 if (hMachine !=
NULL)
8866 (
LPWSTR)pszDeviceInterface,
static SERVICE_STATUS_HANDLE(WINAPI *pRegisterServiceCtrlHandlerExA)(LPCSTR
DWORD WINAPI PNP_GetVersion(handle_t hBinding, WORD *pVersion)
DWORD WINAPI PNP_GetInterfaceDeviceList(handle_t hBinding, GUID *InterfaceGuid, LPWSTR pszDeviceID, BYTE *Buffer, PNP_RPC_BUFFER_SIZE *pulLength, DWORD ulFlags)
DWORD WINAPI PNP_SetHwProf(handle_t hBinding, DWORD ulHardwareProfile, DWORD ulFlags)
DWORD WINAPI PNP_UnregisterNotification(handle_t hBinding, PNP_NOTIFY_HANDLE *pNotifyHandle)
DWORD WINAPI PNP_QueryResConfList(handle_t hBinding, LPWSTR pDeviceID, RESOURCEID ResourceID, BYTE *ResourceData, PNP_RPC_BUFFER_SIZE ResourceLen, BYTE *Buffer, PNP_RPC_BUFFER_SIZE BufferLen, DWORD ulFlags)
DWORD WINAPI PNP_GetRelatedDeviceInstance(handle_t hBinding, DWORD ulRelationship, LPWSTR pDeviceID, LPWSTR pRelatedDeviceId, PNP_RPC_STRING_LEN *pulLength, DWORD ulFlags)
DWORD WINAPI PNP_EnumerateSubKeys(handle_t hBinding, DWORD ulBranch, DWORD ulIndex, LPWSTR Buffer, PNP_RPC_STRING_LEN ulLength, PNP_RPC_STRING_LEN *pulRequiredLen, DWORD ulFlags)
DWORD WINAPI PNP_UnregisterDeviceClassAssociation(handle_t hBinding, LPWSTR pszInterfaceDevice, DWORD ulFlags)
DWORD WINAPI PNP_GetDeviceListSize(handle_t hBinding, LPWSTR pszFilter, PNP_RPC_BUFFER_SIZE *pulLength, DWORD ulFlags)
DWORD WINAPI PNP_InitDetection(handle_t hBinding)
DWORD WINAPI PNP_AddEmptyLogConf(handle_t hBinding, LPWSTR pDeviceID, DWORD ulPriority, DWORD *pulLogConfTag, DWORD ulFlags)
DWORD WINAPI PNP_GetClassRegProp(handle_t hBinding, LPWSTR pszClassGuid, DWORD ulProperty, DWORD *pulRegDataType, BYTE *Buffer, PNP_RPC_STRING_LEN *pulTransferLen, PNP_RPC_STRING_LEN *pulLength, DWORD ulFlags)
DWORD WINAPI PNP_GetServerSideDeviceInstallFlags(handle_t hBinding, DWORD *pulSSDIFlags, DWORD ulFlags)
DWORD WINAPI PNP_FreeLogConf(handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfType, DWORD ulLogConfTag, DWORD ulFlags)
DWORD WINAPI PNP_GetDeviceRegProp(handle_t hBinding, LPWSTR pDeviceID, DWORD ulProperty, DWORD *pulRegDataType, BYTE *Buffer, PNP_PROP_SIZE *pulTransferLen, PNP_PROP_SIZE *pulLength, DWORD ulFlags)
DWORD WINAPI PNP_GetBlockedDriverInfo(handle_t hBinding, BYTE *Buffer, PNP_RPC_BUFFER_SIZE *pulTransferLen, PNP_RPC_BUFFER_SIZE *pulLength, DWORD ulFlags)
DWORD WINAPI PNP_GetInterfaceDeviceListSize(handle_t hBinding, PNP_RPC_BUFFER_SIZE *pulLen, GUID *InterfaceGuid, LPWSTR pszDeviceID, DWORD ulFlags)
DWORD WINAPI PNP_UninstallDevInst(handle_t hBinding, LPWSTR pDeviceID, DWORD ulFlags)
DWORD WINAPI PNP_GetDeviceStatus(handle_t hBinding, LPWSTR pDeviceID, DWORD *pulStatus, DWORD *pulProblem, DWORD ulFlags)
DWORD WINAPI PNP_GetClassInstance(handle_t hBinding, LPWSTR pDeviceId, LPWSTR pszClassInstance, PNP_RPC_STRING_LEN ulLength)
DWORD WINAPI PNP_DeviceInstanceAction(handle_t hBinding, DWORD ulMajorAction, DWORD ulMinorAction, LPWSTR pszDeviceInstance1, LPWSTR pszDeviceInstance2)
DWORD WINAPI PNP_RegisterDriver(handle_t hBinding, LPWSTR pszDeviceID, DWORD ulFlags)
DWORD WINAPI PNP_GetDepth(handle_t hBinding, LPWSTR pszDeviceID, DWORD *pulDepth, DWORD ulFlags)
DWORD WINAPI PNP_HwProfFlags(handle_t hBinding, DWORD ulAction, LPWSTR pDeviceID, DWORD ulConfig, DWORD *pulValue, PPNP_VETO_TYPE pVetoType, LPWSTR pszVetoName, DWORD ulNameLength, DWORD ulFlags)
DWORD WINAPI PNP_DisableDevInst(handle_t hBinding, LPWSTR pDeviceID, PPNP_VETO_TYPE pVetoType, LPWSTR pszVetoName, DWORD ulNameLength, DWORD ulFlags)
DWORD WINAPI PNP_GetClassName(handle_t hBinding, LPWSTR pszClassGuid, LPWSTR Buffer, PNP_RPC_STRING_LEN *pulLength, DWORD ulFlags)
DWORD WINAPI PNP_RequestDeviceEject(handle_t hBinding, LPWSTR pszDeviceID, PPNP_VETO_TYPE pVetoType, LPWSTR pszVetoName, DWORD ulNameLength, DWORD ulFlags)
DWORD WINAPI PNP_GetLogConfPriority(handle_t hBinding, LPWSTR pDeviceID, DWORD ulType, DWORD ulTag, DWORD *pPriority, DWORD ulFlags)
DWORD WINAPI PNP_GetInterfaceDeviceAlias(handle_t hBinding, LPWSTR pszInterfaceDevice, GUID *AliasInterfaceGuid, LPWSTR pszAliasInterfaceDevice, PNP_RPC_STRING_LEN *pulLength, PNP_RPC_STRING_LEN *pulTransferLen, DWORD ulFlags)
DWORD WINAPI PNP_RequestEjectPC(handle_t hBinding)
DWORD WINAPI PNP_CreateDevInst(handle_t hBinding, LPWSTR pszDeviceID, LPWSTR pszParentDeviceID, PNP_RPC_STRING_LEN ulLength, DWORD ulFlags)
DWORD WINAPI PNP_SetDeviceRegProp(handle_t hBinding, LPWSTR pDeviceId, DWORD ulProperty, DWORD ulDataType, BYTE *Buffer, PNP_PROP_SIZE ulLength, DWORD ulFlags)
DWORD WINAPI PNP_AddID(handle_t hBinding, LPWSTR pszDeviceID, LPWSTR pszID, DWORD ulFlags)
DWORD WINAPI PNP_QueryRemove(handle_t hBinding, LPWSTR pszDeviceID, PPNP_VETO_TYPE pVetoType, LPWSTR pszVetoName, DWORD ulNameLength, DWORD ulFlags)
DWORD WINAPI PNP_GetFirstLogConf(handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfType, DWORD *pulLogConfTag, DWORD ulFlags)
DWORD WINAPI PNP_SetClassRegProp(handle_t hBinding, LPWSTR pszClassGuid, DWORD ulProperty, DWORD ulDataType, BYTE *Buffer, PNP_PROP_SIZE ulLength, DWORD ulFlags)
DWORD WINAPI PNP_GetNextLogConf(handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfType, DWORD ulCurrentTag, DWORD *pulNextTag, DWORD ulFlags)
DWORD WINAPI PNP_GetGlobalState(handle_t hBinding, DWORD *pulState, DWORD ulFlags)
CONFIGRET WINAPI PNP_IsDockStationPresent(handle_t hBinding, BOOL *Present)
DWORD WINAPI PNP_RegisterNotification(handle_t hBinding, DWORD_PTR hRecipient, LPWSTR pszName, BYTE *pNotificationFilter, DWORD ulNotificationFilterSize, DWORD ulFlags, PNP_NOTIFY_HANDLE *pNotifyHandle, DWORD ulProcessId, DWORD *pulUnknown9)
DWORD WINAPI PNP_GetHwProfInfo(handle_t hBinding, DWORD ulIndex, HWPROFILEINFO *pHWProfileInfo, DWORD ulProfileInfoSize, DWORD ulFlags)
DWORD WINAPI PNP_SetDeviceProblem(handle_t hBinding, LPWSTR pDeviceID, DWORD ulProblem, DWORD ulFlags)
CONFIGRET WINAPI PNP_RunDetection(handle_t hBinding, DWORD ulFlags)
DWORD WINAPI PNP_GetRootDeviceInstance(handle_t hBinding, LPWSTR pDeviceID, PNP_RPC_STRING_LEN ulLength)
DWORD WINAPI PNP_GetDeviceList(handle_t hBinding, LPWSTR pszFilter, LPWSTR Buffer, PNP_RPC_STRING_LEN *pulLength, DWORD ulFlags)
DWORD WINAPI PNP_GetCustomDevProp(handle_t hBinding, LPWSTR pDeviceID, LPWSTR CustomPropName, DWORD *pulRegDataType, BYTE *Buffer, PNP_RPC_STRING_LEN *pulTransferLen, PNP_RPC_STRING_LEN *pulLength, DWORD ulFlags)
DWORD WINAPI PNP_DeleteRegistryKey(handle_t hBinding, LPWSTR pszDeviceID, LPWSTR pszParentKey, LPWSTR pszChildKey, DWORD ulFlags)
DWORD WINAPI PNP_QueryArbitratorFreeData(handle_t hBinding, BYTE *pData, DWORD DataLen, LPWSTR pDeviceID, RESOURCEID ResourceID, DWORD ulFlags)
DWORD WINAPI PNP_ReportLogOn(handle_t hBinding, BOOL Admin, DWORD ProcessId)
DWORD WINAPI PNP_GetNextResDes(handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfTag, DWORD ulLogConfType, RESOURCEID ResourceID, DWORD ulResourceTag, DWORD *pulNextResType, DWORD *pulNextResTag, DWORD ulFlags)
DWORD WINAPI PNP_ValidateDeviceInstance(handle_t hBinding, LPWSTR pDeviceID, DWORD ulFlags)
DWORD WINAPI PNP_QueryArbitratorFreeSize(handle_t hBinding, DWORD *pulSize, LPWSTR pDeviceID, RESOURCEID ResourceID, DWORD ulFlags)
DWORD WINAPI PNP_DeleteClassKey(handle_t hBinding, LPWSTR pszClassGuid, DWORD ulFlags)
DWORD WINAPI PNP_RegisterDeviceClassAssociation(handle_t hBinding, LPWSTR pszDeviceID, GUID *InterfaceGuid, LPWSTR pszReference, LPWSTR pszSymLink, PNP_RPC_STRING_LEN *pulLength, PNP_RPC_STRING_LEN *pulTransferLen, DWORD ulFlags)
#define RegCloseKey(hKey)
enum _PNP_VETO_TYPE * PPNP_VETO_TYPE
#define CM_REGISTER_DEVICE_DRIVER_BITS
#define CM_DRP_LOCATION_INFORMATION
#define CM_DRP_CONFIGFLAGS
#define CR_INVALID_PROPERTY
#define CM_DRP_SECURITY_SDS
#define CM_OPEN_CLASS_KEY_INTERFACE
#define MAX_CLASS_NAME_LEN
#define CM_CUSTOMDEVPROP_BITS
#define CM_DRP_REMOVAL_POLICY
#define CM_GET_DEVICE_INTERFACE_LIST_BITS
RANGE_ELEMENT * PRANGE_ELEMENT
#define CM_DRP_ENUMERATOR_NAME
#define CM_DRP_REMOVAL_POLICY_HW_DEFAULT
#define CR_INVALID_DEVICE_ID
#define CM_SET_HW_PROF_FLAGS_BITS
#define CM_DRP_BUSTYPEGUID
#define CM_ADD_RANGE_BITS
#define CR_INVALID_CONFLICT_LIST
#define CR_INVALID_LOG_CONF
#define CM_GETIDLIST_FILTER_BITS
#define CM_DRP_LOWERFILTERS
#define CR_INVALID_PRIORITY
#define CM_SET_DEVNODE_PROBLEM_BITS
#define RegDisposition_Bits
_Null_terminated_ CHAR * DEVINSTID_A
#define CM_CRP_SECURITY_SDS
#define CM_DRP_REMOVAL_POLICY_OVERRIDE
#define CM_DRP_CAPABILITIES
_Null_terminated_ WCHAR * DEVINSTID_W
#define CM_DRP_UPPERFILTERS
#define CR_INVALID_RES_DES
#define CM_DRP_COMPATIBLEIDS
#define CM_REGISTRY_SOFTWARE
#define CR_INVALID_DEVINST
#define CM_DRP_DEVICEDESC
#define CR_INVALID_RESOURCEID
CONFLICT_LIST * PCONFLICT_LIST
#define CM_REENUMERATE_BITS
#define CM_DELETE_CLASS_BITS
#define CR_INVALID_MACHINENAME
#define CM_RESDES_WIDTH_BITS
#define CM_DRP_LEGACYBUSTYPE
#define CM_DRP_PHYSICAL_DEVICE_OBJECT_NAME
#define CM_LOCATE_DEVNODE_BITS
#define CM_DRP_FRIENDLYNAME
#define CM_DRP_INSTALL_STATE
#define CM_DRP_CHARACTERISTICS
#define CR_NO_SUCH_DEVNODE
#define CM_CREATE_DEVNODE_BITS
#define CM_OPEN_CLASS_KEY_BITS
#define RegDisposition_OpenAlways
#define CM_REGISTRY_CONFIG
#define CR_CALL_NOT_IMPLEMENTED
#define CM_DRP_UI_NUMBER_DESC_FORMAT
#define CR_INVALID_POINTER
#define CM_QUERY_ARBITRATOR_BITS
#define CM_DRP_DEVICE_POWER_DATA
#define CM_DRP_HARDWAREID
#define CR_NO_SUCH_REGISTRY_KEY
#define CR_INVALID_DEVNODE
#define CR_REGISTRY_ERROR
#define CR_INVALID_RANGE_LIST
CONFIGRET WINAPI CM_Get_Device_ID_List_SizeW(_Out_ PULONG pulLen, _In_opt_ PCWSTR pszFilter, _In_ ULONG ulFlags)
struct _INTERNAL_RANGE_LIST * PINTERNAL_RANGE_LIST
CONFIGRET WINAPI CM_Delete_DevNode_Key_Ex(_In_ DEVINST dnDevInst, _In_ ULONG ulHardwareProfile, _In_ ULONG ulFlags, _In_opt_ HANDLE hMachine)
CONFIGRET WINAPI CM_Get_HW_Prof_Flags_ExA(_In_ DEVINSTID_A szDevInstName, _In_ ULONG ulHardwareProfile, _Out_ PULONG pulValue, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Request_Device_EjectW(_In_ DEVINST dnDevInst, _Out_opt_ PPNP_VETO_TYPE pVetoType, _Out_writes_opt_(ulNameLength) LPWSTR pszVetoName, _In_ ULONG ulNameLength, _In_ ULONG ulFlags)
struct _NOTIFY_DATA * PNOTIFY_DATA
CONFIGRET WINAPI CM_Invert_Range_List(_In_ RANGE_LIST rlhOld, _In_ RANGE_LIST rlhNew, _In_ DWORDLONG ullMaxValue, _In_ ULONG ulFlags)
struct _INTERNAL_RANGE * PINTERNAL_RANGE
CONFIGRET WINAPI CM_Free_Res_Des_Ex(_Out_ PRES_DES prdResDes, _In_ RES_DES rdResDes, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
static const WCHAR ControlClass[]
CONFIGRET WINAPI CM_Unregister_Device_Interface_ExA(_In_ LPCSTR pszDeviceInterface, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Enable_DevNode(_In_ DEVINST dnDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Uninstall_DevNode(_In_ DEVINST dnPhantom, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_DevNode_Registry_Property_ExW(_In_ DEVINST dnDevInst, _In_ ULONG ulProperty, _Out_opt_ PULONG pulRegDataType, _Out_writes_bytes_opt_(*pulLength) PVOID Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
BOOL IsValidResDes(_In_opt_ PRES_DES_INFO pResDesInfo)
CONFIGRET WINAPI CM_Add_Empty_Log_Conf_Ex(_Out_ PLOG_CONF plcLogConf, _In_ DEVINST dnDevInst, _In_ PRIORITY Priority, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Register_Device_Driver(_In_ DEVINST dnDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Add_ID_ExW(_In_ DEVINST dnDevInst, _In_ PWSTR pszID, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Disconnect_Machine(_In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Run_Detection_Ex(_In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_First_Log_Conf_Ex(_Out_opt_ PLOG_CONF plcLogConf, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Request_Device_EjectA(_In_ DEVINST dnDevInst, _Out_opt_ PPNP_VETO_TYPE pVetoType, _Out_writes_opt_(ulNameLength) LPSTR pszVetoName, _In_ ULONG ulNameLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_DevNode_Status(_Out_ PULONG pulStatus, _Out_ PULONG pulProblemNumber, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Log_Conf_Priority_Ex(_In_ LOG_CONF lcLogConf, _Out_ PPRIORITY pPriority, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Open_Class_Key_ExA(_In_opt_ LPGUID pClassGuid, _In_opt_ LPCSTR pszClassName, _In_ REGSAM samDesired, _In_ REGDISPOSITION Disposition, _Out_ PHKEY phkClass, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Device_ID_List_Size_ExW(_Out_ PULONG pulLen, _In_opt_ PCWSTR pszFilter, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Set_DevNode_Registry_Property_ExA(_In_ DEVINST dnDevInst, _In_ ULONG ulProperty, _In_reads_bytes_opt_(ulLength) PCVOID Buffer, _In_ ULONG ulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Query_Resource_Conflict_List(_Out_ PCONFLICT_LIST pclConflictList, _In_ DEVINST dnDevInst, _In_ RESOURCEID ResourceID, _In_ PCVOID ResourceData, _In_ ULONG ResourceLen, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Global_State_Ex(_Out_ PULONG pulState, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Register_Device_Driver_Ex(_In_ DEVINST dnDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Query_Arbitrator_Free_Data_Ex(_Out_writes_bytes_(DataLen) PVOID pData, _In_ ULONG DataLen, _In_ DEVINST dnDevInst, _In_ RESOURCEID ResourceID, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Child(_Out_ PDEVINST pdnDevInst, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Unregister_Device_Interface_ExW(_In_ LPCWSTR pszDeviceInterface, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Register_Device_InterfaceW(_In_ DEVINST dnDevInst, _In_ LPGUID InterfaceClassGuid, _In_opt_ LPCWSTR pszReference, _Out_writes_(*pulLength) LPWSTR pszDeviceInterface, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Disable_DevNode(_In_ DEVINST dnDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Request_Eject_PC_Ex(_In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Unregister_Device_InterfaceW(_In_ LPCWSTR pszDeviceInterface, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Set_HW_Prof_FlagsA(_In_ DEVINSTID_A szDevInstName, _In_ ULONG ulConfig, _In_ ULONG ulValue, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Device_IDW(_In_ DEVINST dnDevInst, _Out_writes_(BufferLen) PWCHAR Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Merge_Range_List(_In_ RANGE_LIST rlhOld1, _In_ RANGE_LIST rlhOld2, _In_ RANGE_LIST rlhNew, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Delete_Class_Key(_In_ LPGUID ClassGuid, _In_ ULONG ulFlags)
CONFIGRET WINAPI CMP_WaitServicesAvailable(_In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Remove_SubTree(_In_ DEVINST dnAncestor, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Create_DevNodeA(_Out_ PDEVINST pdnDevInst, _In_ DEVINSTID_A pDeviceID, _In_ DEVINST dnParent, _In_ ULONG ulFlags)
BOOL IsValidLogConf(_In_opt_ PLOG_CONF_INFO pLogConfInfo)
CONFIGRET WINAPI CM_Get_Device_Interface_List_Size_ExA(_Out_ PULONG pulLen, _In_ LPGUID InterfaceClassGuid, _In_opt_ DEVINSTID_A pDeviceID, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Detect_Resource_Conflict(_In_ DEVINST dnDevInst, _In_ RESOURCEID ResourceID, _In_reads_bytes_(ResourceLen) PCVOID ResourceData, _In_ ULONG ResourceLen, _Out_ PBOOL pbConflictDetected, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Free_Resource_Conflict_Handle(_In_ CONFLICT_LIST clConflictList)
CONFIGRET WINAPI CM_Get_Device_ID_Size_Ex(_Out_ PULONG pulLen, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Set_HW_Prof_FlagsW(_In_ DEVINSTID_W szDevInstName, _In_ ULONG ulConfig, _In_ ULONG ulValue, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Device_Interface_ListA(_In_ LPGUID InterfaceClassGuid, _In_opt_ DEVINSTID_A pDeviceID, _Out_writes_(BufferLen) PCHAR Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Create_DevNode_ExA(_Out_ PDEVINST pdnDevInst, _In_ DEVINSTID_A pDeviceID, _In_ DEVINST dnParent, _In_ ULONG ulFlags, _In_opt_ HANDLE hMachine)
CONFIGRET WINAPI CM_Get_Class_Registry_PropertyA(LPGUID ClassGuid, ULONG ulProperty, PULONG pulRegDataType, PVOID Buffer, PULONG pulLength, ULONG ulFlags, HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_First_Log_Conf(_Out_opt_ PLOG_CONF plcLogConf, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Device_Interface_AliasW(_In_ LPCWSTR pszDeviceInterface, _In_ LPGUID AliasInterfaceGuid, _Out_writes_(*pulLength) LPWSTR pszAliasDeviceInterface, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Reenumerate_DevNode_Ex(_In_ DEVINST dnDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Class_Key_Name_ExA(_In_ LPGUID ClassGuid, _Out_writes_opt_(*pulLength) LPSTR pszKeyName, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Hardware_Profile_InfoA(_In_ ULONG ulIndex, _Out_ PHWPROFILEINFO_A pHWProfileInfo, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Intersect_Range_List(_In_ RANGE_LIST rlhOld1, _In_ RANGE_LIST rlhOld2, _In_ RANGE_LIST rlhNew, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Set_DevNode_Registry_PropertyW(_In_ DEVINST dnDevInst, _In_ ULONG ulProperty, _In_reads_bytes_opt_(ulLength) PCVOID Buffer, _In_ ULONG ulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Sibling_Ex(_Out_ PDEVINST pdnDevInst, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
struct _LOG_CONF_INFO * PLOG_CONF_INFO
CONFIGRET WINAPI CM_Open_DevNode_Key_Ex(_In_ DEVINST dnDevNode, _In_ REGSAM samDesired, _In_ ULONG ulHardwareProfile, _In_ REGDISPOSITION Disposition, _Out_ PHKEY phkDevice, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Connect_MachineA(_In_opt_ PCSTR UNCServerName, _Out_ PHMACHINE phMachine)
WORD WINAPI CM_Get_Version(VOID)
CONFIGRET WINAPI CM_Add_Res_Des(_Out_opt_ PRES_DES prdResDes, _In_ LOG_CONF lcLogConf, _In_ RESOURCEID ResourceID, _In_reads_bytes_(ResourceLen) PCVOID ResourceData, _In_ ULONG ResourceLen, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Modify_Res_Des_Ex(_Out_ PRES_DES prdResDes, _In_ RES_DES rdResDes, _In_ RESOURCEID ResourceID, _In_reads_bytes_(ResourceLen) PCVOID ResourceData, _In_ ULONG ResourceLen, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Query_Arbitrator_Free_Size(_Out_ PULONG pulSize, _In_ DEVINST dnDevInst, _In_ RESOURCEID ResourceID, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Device_Interface_List_ExA(_In_ LPGUID InterfaceClassGuid, _In_opt_ DEVINSTID_A pDeviceID, _Out_writes_(BufferLen) PCHAR Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Delete_Range(_In_ DWORDLONG ullStartValue, _In_ DWORDLONG ullEndValue, _In_ RANGE_LIST rlh, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Query_Remove_SubTree(_In_ DEVINST dnAncestor, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Detect_Resource_Conflict_Ex(_In_ DEVINST dnDevInst, _In_ RESOURCEID ResourceID, _In_reads_bytes_(ResourceLen) PCVOID ResourceData, _In_ ULONG ResourceLen, _Out_ PBOOL pbConflictDetected, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
static const WCHAR BackslashOpenBrace[]
CONFIGRET WINAPI CM_Add_ID_ExA(_In_ DEVINST dnDevInst, _In_ PSTR pszID, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Device_Interface_List_Size_ExW(_Out_ PULONG pulLen, _In_ LPGUID InterfaceClassGuid, _In_opt_ DEVINSTID_W pDeviceID, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Enumerate_Classes(_In_ ULONG ulClassIndex, _Out_ LPGUID ClassGuid, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Class_NameW(_In_ LPGUID ClassGuid, _Out_writes_opt_(*pulLength) PWCHAR Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_HW_Prof_FlagsA(_In_ DEVINSTID_A szDevInstName, _In_ ULONG ulHardwareProfile, _Out_ PULONG pulValue, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Register_Device_Interface_ExA(_In_ DEVINST dnDevInst, _In_ LPGUID InterfaceClassGuid, _In_opt_ LPCSTR pszReference, _Out_writes_(*pulLength) LPSTR pszDeviceInterface, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Test_Range_Available(_In_ DWORDLONG ullStartValue, _In_ DWORDLONG ullEndValue, _In_ RANGE_LIST rlh, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Create_DevNode_ExW(_Out_ PDEVINST pdnDevInst, _In_ DEVINSTID_W pDeviceID, _In_ DEVINST dnParent, _In_ ULONG ulFlags, _In_opt_ HANDLE hMachine)
CONFIGRET WINAPI CM_Query_Arbitrator_Free_Data(_Out_writes_bytes_(DataLen) PVOID pData, _In_ ULONG DataLen, _In_ DEVINST dnDevInst, _In_ RESOURCEID ResourceID, _In_ ULONG ulFlags)
CONFIGRET WINAPI CMP_GetBlockedDriverInfo(_Out_opt_ LPWSTR pszNames, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Class_Registry_PropertyW(LPGUID ClassGuid, ULONG ulProperty, PULONG pulRegDataType, PVOID Buffer, PULONG pulLength, ULONG ulFlags, HMACHINE hMachine)
CONFIGRET WINAPI CM_Is_Dock_Station_Present_Ex(_Out_ PBOOL pbPresent, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Open_Class_Key_ExW(_In_opt_ LPGUID pClassGuid, _In_opt_ LPCWSTR pszClassName, _In_ REGSAM samDesired, _In_ REGDISPOSITION Disposition, _Out_ PHKEY phkClass, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Device_Interface_List_SizeW(_Out_ PULONG pulLen, _In_ LPGUID InterfaceClassGuid, _In_opt_ DEVINSTID_W pDeviceID, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Set_DevNode_Problem_Ex(_In_ DEVINST dnDevInst, _In_ ULONG ulProblem, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Query_Arbitrator_Free_Size_Ex(_Out_ PULONG pulSize, _In_ DEVINST dnDevInst, _In_ RESOURCEID ResourceID, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
static const WCHAR DeviceClasses[]
CONFIGRET WINAPI CM_Open_DevNode_Key(_In_ DEVINST dnDevNode, _In_ REGSAM samDesired, _In_ ULONG ulHardwareProfile, _In_ REGDISPOSITION Disposition, _Out_ PHKEY phkDevice, _In_ ULONG ulFlags)
static CONFIGRET RpcStatusToCmStatus(_In_ RPC_STATUS Status)
CONFIGRET WINAPI CM_Get_DevNode_Status_Ex(_Out_ PULONG pulStatus, _Out_ PULONG pulProblemNumber, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Enumerate_Enumerators_ExW(_In_ ULONG ulEnumIndex, _Out_writes_(*pulLength) PWCHAR Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Dup_Range_List(_In_ RANGE_LIST rlhOld, _In_ RANGE_LIST rlhNew, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_DevNode_Registry_Property_ExA(_In_ DEVINST dnDevInst, _In_ ULONG ulProperty, _Out_opt_ PULONG pulRegDataType, _Out_writes_bytes_opt_(*pulLength) PVOID Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
struct _INTERNAL_RANGE INTERNAL_RANGE
CONFIGRET WINAPI CM_Add_IDA(_In_ DEVINST dnDevInst, _In_ PSTR pszID, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Setup_DevNode(_In_ DEVINST dnDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Hardware_Profile_Info_ExA(_In_ ULONG ulIndex, _Out_ PHWPROFILEINFO_A pHWProfileInfo, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Set_DevNode_Registry_PropertyA(_In_ DEVINST dnDevInst, _In_ ULONG ulProperty, _In_reads_bytes_opt_(ulLength) PCVOID Buffer, _In_ ULONG ulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Query_And_Remove_SubTree_ExA(_In_ DEVINST dnAncestor, _Out_opt_ PPNP_VETO_TYPE pVetoType, _Out_writes_opt_(ulNameLength) LPSTR pszVetoName, _In_ ULONG ulNameLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_DevNode_Custom_Property_ExA(_In_ DEVINST dnDevInst, _In_ PCSTR pszCustomPropertyName, _Out_opt_ PULONG pulRegDataType, _Out_writes_bytes_opt_(*pulLength) PVOID Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Device_ID_ExW(_In_ DEVINST dnDevInst, _Out_writes_(BufferLen) PWCHAR Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
BOOL WINAPI CM_Is_Version_Available_Ex(_In_ WORD wVersion, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Device_IDA(_In_ DEVINST dnDevInst, _Out_writes_(BufferLen) PCHAR Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Locate_DevNodeA(_Out_ PDEVINST pdnDevInst, _In_opt_ DEVINSTID_A pDeviceID, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Request_Device_Eject_ExW(_In_ DEVINST dnDevInst, _Out_opt_ PPNP_VETO_TYPE pVetoType, _Out_writes_opt_(ulNameLength) LPWSTR pszVetoName, _In_ ULONG ulNameLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
BOOL IsValidConflictData(_In_opt_ PCONFLICT_DATA pConflictData)
CONFIGRET WINAPI CM_Free_Res_Des(_Out_ PRES_DES prdResDes, _In_ RES_DES rdResDes, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Global_State(_Out_ PULONG pulState, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_DevNode_Custom_Property_ExW(_In_ DEVINST dnDevInst, _In_ PCWSTR pszCustomPropertyName, _Out_opt_ PULONG pulRegDataType, _Out_writes_bytes_opt_(*pulLength) PVOID Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Set_HW_Prof_Ex(_In_ ULONG ulHardwareProfile, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Next_Res_Des_Ex(_Out_ PRES_DES prdResDes, _In_ RES_DES rdResDes, _In_ RESOURCEID ForResource, _Out_opt_ PRESOURCEID pResourceID, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Create_DevNodeW(_Out_ PDEVINST pdnDevInst, _In_ DEVINSTID_W pDeviceID, _In_ DEVINST dnParent, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Locate_DevNode_ExA(_Out_ PDEVINST pdnDevInst, _In_opt_ DEVINSTID_A pDeviceID, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Parent(_Out_ PDEVINST pdnDevInst, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Add_Empty_Log_Conf(_Out_ PLOG_CONF plcLogConf, _In_ DEVINST dnDevInst, _In_ PRIORITY Priority, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Device_Interface_ListW(_In_ LPGUID InterfaceClassGuid, _In_opt_ DEVINSTID_W pDeviceID, _Out_writes_(BufferLen) PWCHAR Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Device_ID_Size(_Out_ PULONG pulLen, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Create_Range_List(_Out_ PRANGE_LIST prlh, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Resource_Conflict_DetailsA(_In_ CONFLICT_LIST clConflictList, _In_ ULONG ulIndex, _Inout_ PCONFLICT_DETAILS_A pConflictDetails)
CONFIGRET WINAPI CM_Register_Device_InterfaceA(_In_ DEVINST dnDevInst, _In_ LPGUID InterfaceClassGuid, _In_opt_ LPCSTR pszReference, _Out_writes_(*pulLength) LPSTR pszDeviceInterface, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Child_Ex(_Out_ PDEVINST pdnDevInst, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_DevNode_Registry_PropertyW(_In_ DEVINST dnDevInst, _In_ ULONG ulProperty, _Out_opt_ PULONG pulRegDataType, _Out_writes_bytes_opt_(*pulLength) PVOID Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Modify_Res_Des(_Out_ PRES_DES prdResDes, _In_ RES_DES rdResDes, _In_ RESOURCEID ResourceID, _In_reads_bytes_(ResourceLen) PCVOID ResourceData, _In_ ULONG ResourceLen, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Add_IDW(_In_ DEVINST dnDevInst, _In_ PWSTR pszID, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Log_Conf_Priority(_In_ LOG_CONF lcLogConf, _Out_ PPRIORITY pPriority, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Reenumerate_DevNode(_In_ DEVINST dnDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Set_Class_Registry_PropertyA(_In_ LPGUID ClassGuid, _In_ ULONG ulProperty, _In_reads_bytes_opt_(ulLength) PCVOID Buffer, _In_ ULONG ulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_DevNode_Custom_PropertyA(_In_ DEVINST dnDevInst, _In_ PCSTR pszCustomPropertyName, _Out_opt_ PULONG pulRegDataType, _Out_writes_bytes_opt_(*pulLength) PVOID Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
static VOID SplitDeviceInstanceId(_In_ PWSTR pszDeviceInstanceId, _Out_ PWSTR pszDeviceId, _Out_ PWSTR pszInstanceId)
CONFIGRET WINAPI CM_Get_Parent_Ex(_Out_ PDEVINST pdnDevInst, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_First_Range(_In_ RANGE_LIST rlh, _Out_ PDWORDLONG pullStart, _Out_ PDWORDLONG pullEnd, _Out_ PRANGE_ELEMENT preElement, _In_ ULONG ulFlags)
struct _RES_DES_INFO * PRES_DES_INFO
CONFIGRET WINAPI CM_Unregister_Device_InterfaceA(_In_ LPCSTR pszDeviceInterface, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Set_DevNode_Problem(_In_ DEVINST dnDevInst, _In_ ULONG ulProblem, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Register_Device_Interface_ExW(_In_ DEVINST dnDevInst, _In_ LPGUID InterfaceClassGuid, _In_opt_ LPCWSTR pszReference, _Out_writes_(*pulLength) LPWSTR pszDeviceInterface, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Device_ID_List_ExA(_In_ PCSTR pszFilter, _Out_writes_(BufferLen) PCHAR Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Device_Interface_List_SizeA(_Out_ PULONG pulLen, _In_ LPGUID InterfaceClassGuid, _In_opt_ DEVINSTID_A pDeviceID, _In_ ULONG ulFlags)
static const WCHAR CloseBrace[]
CONFIGRET WINAPI CM_Setup_DevNode_Ex(_In_ DEVINST dnDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
struct _INTERNAL_RANGE_LIST INTERNAL_RANGE_LIST
CONFIGRET WINAPI CM_Delete_Class_Key_Ex(_In_ LPGUID ClassGuid, _In_ ULONG ulFlags, _In_opt_ HANDLE hMachine)
CONFIGRET WINAPI CM_Get_Device_Interface_Alias_ExW(_In_ LPCWSTR pszDeviceInterface, _In_ LPGUID AliasInterfaceGuid, _Out_writes_(*pulLength) LPWSTR pszAliasDeviceInterface, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Connect_MachineW(_In_opt_ PCWSTR UNCServerName, _Out_ PHMACHINE phMachine)
CONFIGRET WINAPI CM_Set_HW_Prof(_In_ ULONG ulHardwareProfile, _In_ ULONG ulFlags)
static CONFIGRET GetDeviceInstanceKeyPath(_In_ RPC_BINDING_HANDLE BindingHandle, _In_ PWSTR pszDeviceInst, _Out_ PWSTR pszKeyPath, _Out_ PWSTR pszInstancePath, _In_ ULONG ulHardwareProfile, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Device_ID_List_Size_ExA(_Out_ PULONG pulLen, _In_opt_ PCSTR pszFilter, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Set_Class_Registry_PropertyW(_In_ LPGUID ClassGuid, _In_ ULONG ulProperty, _In_reads_bytes_opt_(ulLength) PCVOID Buffer, _In_ ULONG ulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Set_DevNode_Registry_Property_ExW(_In_ DEVINST dnDevInst, _In_ ULONG ulProperty, _In_reads_bytes_opt_(ulLength) PCVOID Buffer, _In_ ULONG ulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Next_Res_Des(_Out_ PRES_DES prdResDes, _In_ RES_DES rdResDes, _In_ RESOURCEID ForResource, _Out_opt_ PRESOURCEID pResourceID, _In_ ULONG ulFlags)
static ULONG GetRegistryPropertyType(_In_ ULONG ulProperty)
CONFIGRET WINAPI CM_Request_Eject_PC(VOID)
CONFIGRET WINAPI CM_Get_Device_Interface_Alias_ExA(_In_ LPCSTR pszDeviceInterface, _In_ LPGUID AliasInterfaceGuid, _Out_writes_(*pulLength) LPSTR pszAliasDeviceInterface, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Class_Name_ExA(_In_ LPGUID ClassGuid, _Out_writes_opt_(*pulLength) PCHAR Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
static BOOL GuidToString(_In_ LPGUID Guid, _Out_ LPWSTR String)
CONFIGRET WINAPI CM_Get_Device_ID_ListA(_In_ PCSTR pszFilter, _Out_writes_(BufferLen) PCHAR Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Res_Des_Data(_In_ RES_DES rdResDes, _Out_writes_bytes_(BufferLen) PVOID Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags)
BOOL WINAPI CM_Is_Version_Available(_In_ WORD wVersion)
CONFIGRET WINAPI CM_Get_Res_Des_Data_Size(_Out_ PULONG pulSize, _In_ RES_DES rdResDes, _In_ ULONG ulFlags)
struct _NOTIFY_DATA NOTIFY_DATA
struct _MACHINE_INFO MACHINE_INFO
CONFIGRET WINAPI CM_Get_Hardware_Profile_InfoW(_In_ ULONG ulIndex, _Out_ PHWPROFILEINFO_W pHWProfileInfo, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Free_Log_Conf_Ex(_In_ LOG_CONF lcLogConfToBeFreed, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Disable_DevNode_Ex(_In_ DEVINST dnDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Next_Range(_Inout_ PRANGE_ELEMENT preElement, _Out_ PDWORDLONG pullStart, _Out_ PDWORDLONG pullEnd, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Sibling(_Out_ PDEVINST pdnDevInst, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Query_Remove_SubTree_Ex(_In_ DEVINST dnAncestor, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Free_Range_List(_In_ RANGE_LIST RangeList, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_HW_Prof_FlagsW(_In_ DEVINSTID_W szDevInstName, _In_ ULONG ulHardwareProfile, _Out_ PULONG pulValue, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Delete_DevNode_Key(_In_ DEVINST dnDevInst, _In_ ULONG ulHardwareProfile, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Open_Class_KeyW(_In_opt_ LPGUID pClassGuid, _In_opt_ LPCWSTR pszClassName, _In_ REGSAM samDesired, _In_ REGDISPOSITION Disposition, _Out_ PHKEY phkClass, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Class_Name_ExW(_In_ LPGUID ClassGuid, _Out_writes_opt_(*pulLength) PWCHAR Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Add_Range(_In_ DWORDLONG ullStartValue, _In_ DWORDLONG ullEndValue, _In_ RANGE_LIST rlh, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Depth_Ex(_Out_ PULONG pulDepth, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Move_DevNode_Ex(_In_ DEVINST dnFromDevInst, _In_ DEVINST dnToDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CMP_Report_LogOn(_In_ DWORD dwMagic, _In_ DWORD dwProcessId)
CONFIGRET WINAPI CM_Get_Device_ID_List_ExW(_In_ PCWSTR pszFilter, _Out_writes_(BufferLen) PWCHAR Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Next_Log_Conf(_Out_opt_ PLOG_CONF plcLogConf, _In_ LOG_CONF lcLogConf, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Class_NameA(_In_ LPGUID ClassGuid, _Out_writes_opt_(*pulLength) PCHAR Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Query_And_Remove_SubTreeW(_In_ DEVINST dnAncestor, _Out_opt_ PPNP_VETO_TYPE pVetoType, _Out_writes_opt_(ulNameLength) LPWSTR pszVetoName, _In_ ULONG ulNameLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Add_Res_Des_Ex(_Out_opt_ PRES_DES prdResDes, _In_ LOG_CONF lcLogConf, _In_ RESOURCEID ResourceID, _In_reads_bytes_(ResourceLen) PCVOID ResourceData, _In_ ULONG ResourceLen, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
struct _CONFLICT_DATA * PCONFLICT_DATA
CONFIGRET WINAPI CM_Uninstall_DevNode_Ex(_In_ DEVINST dnPhantom, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CMP_Init_Detection(_In_ ULONG ulMagic)
CONFIGRET WINAPI CM_Enumerate_Enumerators_ExA(_In_ ULONG ulEnumIndex, _Out_writes_(*pulLength) PCHAR Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Device_Interface_AliasA(_In_ LPCSTR pszDeviceInterface, _In_ LPGUID AliasInterfaceGuid, _Out_writes_(*pulLength) LPSTR pszAliasDeviceInterface, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Remove_SubTree_Ex(_In_ DEVINST dnAncestor, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Next_Log_Conf_Ex(_Out_opt_ PLOG_CONF plcLogConf, _In_ LOG_CONF lcLogConf, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Locate_DevNode_ExW(_Out_ PDEVINST pdnDevInst, _In_opt_ DEVINSTID_W pDeviceID, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CMP_UnregisterNotification(_In_ HDEVNOTIFY hDevNotify)
CONFIGRET WINAPI CM_Get_Hardware_Profile_Info_ExW(_In_ ULONG ulIndex, _Out_ PHWPROFILEINFO_W pHWProfileInfo, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
struct _MACHINE_INFO * PMACHINE_INFO
CONFIGRET WINAPI CM_Get_Resource_Conflict_Count(_In_ CONFLICT_LIST clConflictList, _Out_ PULONG pulCount)
CONFIGRET WINAPI CM_Find_Range(_Out_ PDWORDLONG pullStart, _In_ DWORDLONG ullStart, _In_ ULONG ulLength, _In_ DWORDLONG ullAlignment, _In_ DWORDLONG ullEnd, _In_ RANGE_LIST rlh, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Free_Log_Conf(_In_ LOG_CONF lcLogConfToBeFreed, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Res_Des_Data_Ex(_In_ RES_DES rdResDes, _Out_writes_bytes_(BufferLen) PVOID Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Open_Class_KeyA(_In_opt_ LPGUID pClassGuid, _In_opt_ LPCSTR pszClassName, _In_ REGSAM samDesired, _In_ REGDISPOSITION Disposition, _Out_ PHKEY phkClass, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Class_Key_Name_ExW(_In_ LPGUID ClassGuid, _Out_writes_opt_(*pulLength) LPWSTR pszKeyName, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_HW_Prof_Flags_ExW(_In_ DEVINSTID_W szDevInstName, _In_ ULONG ulHardwareProfile, _Out_ PULONG pulValue, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
BOOL IsValidRangeList(_In_opt_ PINTERNAL_RANGE_LIST pRangeList)
CONFIGRET WINAPI CM_Run_Detection(_In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Free_Res_Des_Handle(_In_ RES_DES rdResDes)
CONFIGRET WINAPI CM_Query_And_Remove_SubTreeA(_In_ DEVINST dnAncestor, _Out_opt_ PPNP_VETO_TYPE pVetoType, _Out_writes_opt_(ulNameLength) LPSTR pszVetoName, _In_ ULONG ulNameLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Request_Device_Eject_ExA(_In_ DEVINST dnDevInst, _Out_opt_ PPNP_VETO_TYPE pVetoType, _Out_writes_opt_(ulNameLength) LPSTR pszVetoName, _In_ ULONG ulNameLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
DWORD WINAPI CMP_WaitNoPendingInstallEvents(_In_ DWORD dwTimeout)
CONFIGRET WINAPI CM_Get_Class_Key_NameW(_In_ LPGUID ClassGuid, _Out_writes_opt_(*pulLength) LPWSTR pszKeyName, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Enumerate_Classes_Ex(_In_ ULONG ulClassIndex, _Out_ LPGUID ClassGuid, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
struct _RES_DES_INFO RES_DES_INFO
CONFIGRET WINAPI CM_Get_Depth(_Out_ PULONG pulDepth, _In_ DEVINST dnDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Query_And_Remove_SubTree_ExW(_In_ DEVINST dnAncestor, _Out_opt_ PPNP_VETO_TYPE pVetoType, _Out_writes_opt_(ulNameLength) LPWSTR pszVetoName, _In_ ULONG ulNameLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Locate_DevNodeW(_Out_ PDEVINST pdnDevInst, _In_opt_ DEVINSTID_W pDeviceID, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Move_DevNode(_In_ DEVINST dnFromDevInst, _In_ DEVINST dnToDevInst, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Class_Key_NameA(_In_ LPGUID ClassGuid, _Out_writes_opt_(*pulLength) LPSTR pszKeyName, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Enumerate_EnumeratorsW(_In_ ULONG ulEnumIndex, _Out_writes_(*pulLength) PWCHAR Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Device_ID_ExA(_In_ DEVINST dnDevInst, _Out_writes_(BufferLen) PCHAR Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CMP_RegisterNotification(_In_ HANDLE hRecipient, _In_ LPVOID lpvNotificationFilter, _In_ ULONG ulFlags, _Out_ PHDEVNOTIFY phDevNotify)
CONFIGRET WINAPI CM_Free_Log_Conf_Handle(_In_ LOG_CONF lcLogConf)
CONFIGRET WINAPI CM_Is_Dock_Station_Present(_Out_ PBOOL pbPresent)
CONFIGRET WINAPI CM_Get_Resource_Conflict_DetailsW(_In_ CONFLICT_LIST clConflictList, _In_ ULONG ulIndex, _Inout_ PCONFLICT_DETAILS_W pConflictDetails)
CONFIGRET WINAPI CM_Enumerate_EnumeratorsA(_In_ ULONG ulEnumIndex, _Out_writes_(*pulLength) PCHAR Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Device_ID_ListW(_In_ PCWSTR pszFilter, _Out_writes_(BufferLen) PWCHAR Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_Device_ID_List_SizeA(_Out_ PULONG pulLen, _In_opt_ PCSTR pszFilter, _In_ ULONG ulFlags)
CONFIGRET WINAPI CM_Get_DevNode_Registry_PropertyA(_In_ DEVINST dnDevInst, _In_ ULONG ulProperty, _Out_opt_ PULONG pulRegDataType, _Out_writes_bytes_opt_(*pulLength) PVOID Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
CONFIGRET WINAPI CMP_GetServerSideDeviceInstallFlags(_Out_ PULONG pulSSDIFlags, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
WORD WINAPI CM_Get_Version_Ex(_In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Device_Interface_List_ExW(_In_ LPGUID InterfaceClassGuid, _In_opt_ DEVINSTID_W pDeviceID, _Out_writes_(BufferLen) PWCHAR Buffer, _In_ ULONG BufferLen, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Enable_DevNode_Ex(_In_ DEVINST dnDevInst, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Get_Res_Des_Data_Size_Ex(_Out_ PULONG pulSize, _In_ RES_DES rdResDes, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
CONFIGRET WINAPI CM_Set_HW_Prof_Flags_ExA(_In_ DEVINSTID_A szDevInstName, _In_ ULONG ulConfig, _In_ ULONG ulValue, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
struct _LOG_CONF_INFO LOG_CONF_INFO
CONFIGRET WINAPI CM_Set_HW_Prof_Flags_ExW(_In_ DEVINSTID_W szDevInstName, _In_ ULONG ulConfig, _In_ ULONG ulValue, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine)
struct _CONFLICT_DATA CONFLICT_DATA
CONFIGRET WINAPI CM_Get_DevNode_Custom_PropertyW(_In_ DEVINST dnDevInst, _In_ PCWSTR pszCustomPropertyName, _Out_opt_ PULONG pulRegDataType, _Out_writes_bytes_opt_(*pulLength) PVOID Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags)
static TAGREF LPCWSTR LPDWORD LPVOID lpBuffer
#define MAX_DEVICE_ID_LEN
#define MAX_GUID_STRING_LEN
LONG WINAPI RegCreateKeyExW(_In_ HKEY hKey, _In_ LPCWSTR lpSubKey, _In_ DWORD Reserved, _In_opt_ LPWSTR lpClass, _In_ DWORD dwOptions, _In_ REGSAM samDesired, _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes, _Out_ PHKEY phkResult, _Out_opt_ LPDWORD lpdwDisposition)
LONG WINAPI RegOpenKeyExW(HKEY hKey, LPCWSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult)
LONG WINAPI RegSetValueExW(_In_ HKEY hKey, _In_ LPCWSTR lpValueName, _In_ DWORD Reserved, _In_ DWORD dwType, _In_ CONST BYTE *lpData, _In_ DWORD cbData)
LONG WINAPI RegConnectRegistryW(LPCWSTR lpMachineName, HKEY hKey, PHKEY phkResult)
BOOL WINAPI ConvertStringSecurityDescriptorToSecurityDescriptorW(LPCWSTR StringSecurityDescriptor, DWORD StringSDRevision, PSECURITY_DESCRIPTOR *SecurityDescriptor, PULONG SecurityDescriptorSize)
#define HeapFree(x, y, z)
#define WideCharToMultiByte
#define MultiByteToWideChar
static DWORD DWORD * dwLength
LPWSTR WINAPI pSetupMultiByteToUnicode(LPCSTR lpMultiByteStr, UINT uCodePage)
LPVOID WINAPI MyMalloc(DWORD dwSize)
DWORD WINAPI pSetupCaptureAndConvertAnsiArg(LPCSTR pSrc, LPWSTR *pDst)
BOOL WINAPI pSetupIsUserAdmin(VOID)
VOID WINAPI MyFree(LPVOID lpMem)
DWORD WINAPI pSetupStringFromGuid(LPGUID lpGUID, PWSTR pString, DWORD dwStringLen)
RPC_STATUS PnpBindRpc(LPCWSTR pszMachine, RPC_BINDING_HANDLE *BindingHandle)
BOOL PnpGetLocalHandles(RPC_BINDING_HANDLE *BindingHandle, HSTRING_TABLE *StringTable)
RPC_STATUS PnpUnbindRpc(RPC_BINDING_HANDLE *BindingHandle)
HSTRING_TABLE WINAPI pSetupStringTableInitialize(VOID)
DWORD WINAPI pSetupStringTableAddString(HSTRING_TABLE hStringTable, LPWSTR lpString, DWORD dwFlags)
LPWSTR WINAPI pSetupStringTableStringFromId(HSTRING_TABLE hStringTable, DWORD dwId)
VOID WINAPI pSetupStringTableDestroy(HSTRING_TABLE hStringTable)
BOOL WINAPI pSetupStringTableStringFromIdEx(HSTRING_TABLE hStringTable, DWORD dwId, LPWSTR lpBuffer, LPDWORD lpBufferLength)
#define InsertTailList(ListHead, Entry)
#define IsListEmpty(ListHead)
#define RemoveHeadList(ListHead)
#define InitializeListHead(ListHead)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
HLOCAL NTAPI LocalFree(HLOCAL hMem)
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
#define EXCEPTION_EXECUTE_HANDLER
unsigned long long DWORDLONG
LPWSTR WINAPI lstrcatW(LPWSTR lpString1, LPCWSTR lpString2)
int WINAPI lstrlenA(LPCSTR lpString)
#define memcpy(s1, s2, n)
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Reserved_ ULONG _In_opt_ PUNICODE_STRING _In_ ULONG _Out_opt_ PULONG Disposition
#define _In_reads_bytes_(s)
#define _Out_writes_opt_(s)
#define _Out_writes_bytes_opt_(s)
#define _Out_writes_bytes_(s)
#define _In_reads_bytes_opt_(s)
struct _PNP_CONFLICT_LIST PNP_CONFLICT_LIST
const unsigned long PNP_MAX_GUID_STRING_LEN
unsigned long PNP_RPC_BUFFER_SIZE
#define _SEH2_EXCEPT(...)
RPC_STATUS WINAPI UuidToStringW(UUID *Uuid, RPC_WSTR *StringUuid)
RPC_STATUS WINAPI RpcStringFreeW(RPC_WSTR *String)
RPC_STATUS WINAPI UuidFromStringW(RPC_WSTR s, UUID *uuid)
DWORD WINAPI I_ScPnPGetServiceName(IN SERVICE_STATUS_HANDLE hServiceStatus, OUT LPWSTR lpServiceName, IN DWORD cchServiceName)
#define RpcExceptionCode()
#define SP_MAX_MACHINENAME_LENGTH
WCHAR HWPI_szFriendlyName[MAX_PROFILE_LEN]
PPNP_CONFLICT_LIST pConflictList
struct _INTERNAL_RANGE_LIST * pRangeList
struct _LIST_ENTRY * Flink
WCHAR szMachineName[SP_MAX_MACHINENAME_LENGTH]
HSTRING_TABLE StringTable
RPC_BINDING_HANDLE BindingHandle
HANDLE WINAPI DECLSPEC_HOTPATCH OpenEventW(IN DWORD dwDesiredAccess, IN BOOL bInheritHandle, IN LPCWSTR lpName)
DWORD WINAPI WaitForSingleObject(IN HANDLE hHandle, IN DWORD dwMilliseconds)
VOID WINAPI DECLSPEC_HOTPATCH Sleep(IN DWORD dwMilliseconds)
BOOL WINAPI DECLSPEC_HOTPATCH ReleaseMutex(IN HANDLE hMutex)
_In_ ULONG _Out_ HANDLE * BindingHandle
TW_UINT32 TW_UINT16 TW_UINT16 TW_MEMREF pData
#define CONTAINING_RECORD(address, type, field)
_In_z_ PCWSTR _In_ ULONG ulType
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
_Must_inspect_result_ _In_ WDFDEVICE _In_ LPCGUID _Out_ PINTERFACE _In_ USHORT _In_ USHORT Version
_In_ WDFINTERRUPT _In_ WDF_INTERRUPT_POLICY _In_ WDF_INTERRUPT_PRIORITY Priority
_In_ WDFMEMORY _Out_opt_ size_t * BufferSize
_Must_inspect_result_ _In_ WDFOBJECT _In_ CONST GUID * Guid
int WINAPI GetWindowTextW(HWND hWnd, LPWSTR lpString, int nMaxCount)
DWORD WINAPI GetLastError(void)
DWORD WINAPI GetCurrentProcessId(void)
WINBASEAPI _In_ DWORD nLength
_In_ ULONG _In_ ULONG ulTag
_Check_return_ _Out_ PULONG pulSize
#define HKEY_LOCAL_MACHINE
int WINAPIV wsprintfW(_Out_ LPWSTR, _In_ _Printf_format_string_ LPCWSTR,...)
_In_ CONST GUID * InterfaceClassGuid