45 'C',
'u',
'r',
'r',
'e',
'n',
't',
'C',
'o',
'n',
't',
'r',
'o',
'l',
'S',
'e',
't',
'\\',
46 'C',
'o',
'n',
't',
'r',
'o',
'l',
'\\',
47 'C',
'l',
'a',
's',
's',0};
50 'C',
'u',
'r',
'r',
'e',
'n',
't',
'C',
'o',
'n',
't',
'r',
'o',
'l',
'S',
'e',
't',
'\\',
51 'C',
'o',
'n',
't',
'r',
'o',
'l',
'\\',
52 'D',
'e',
'v',
'i',
'c',
'e',
'C',
'l',
'a',
's',
's',
'e',
's',0};
71#define LOG_CONF_MAGIC 0x464E434C
80#define NOTIFY_MAGIC 0x44556677
98#define RANGE_LIST_MAGIC 0x33445566
106#define CONFLICT_MAGIC 0x11225588
205 wcscpy(pszDeviceId, pszDeviceInstanceId);
234 ULONG ulTransferLength, ulLength;
237 TRACE(
"GetDeviceInstanceKeyPath()\n");
241 if (pszBuffer ==
NULL)
243 ERR(
"MyMalloc() failed\n");
251 ulTransferLength = 300 *
sizeof(
WCHAR);
252 ulLength = 300 *
sizeof(
WCHAR);
292 TRACE(
"szBuffer: %S\n", pszBuffer);
298 TRACE(
"szBuffer: %S\n", pszBuffer);
302 if (ulHardwareProfile == 0)
306 L"System\\CurrentControlSet\\Hardware Profiles",
308 L"System\\CurrentControlSet\\Control\\Class",
314 L"%s\\%04lu\\%s\\%s",
315 L"System\\CurrentControlSet\\Hardware Profiles",
317 L"System\\CurrentControlSet\\Control\\Class",
325 L"System\\CurrentControlSet\\Control\\Class",
339 if (ulHardwareProfile == 0)
343 L"System\\CurrentControlSet\\Hardware Profiles",
345 L"System\\CurrentControlSet\\Enum",
351 L"%s\\%04lu\\%s\\%s",
352 L"System\\CurrentControlSet\\Hardware Profiles",
354 L"System\\CurrentControlSet\\Enum",
362 L"System\\CurrentControlSet\\Enum",
366 L"Device Parameters");
376 L"System\\CurrentControlSet\\Enum",
382 if (pszBuffer !=
NULL)
395 if (pRangeList ==
NULL)
419 if (pLogConfInfo ==
NULL)
443 if (pConflictData ==
NULL)
473 ULONG ulTransferLength;
476 TRACE(
"CMP_GetBlockedDriverInfo(%p %p %lx %p)\n",
477 pszNames, pulLength, ulFlags, hMachine);
479 if (hMachine !=
NULL)
491 ulTransferLength = *pulLength;
524 TRACE(
"CMP_GetServerSideDeviceInstallFlags(%p %lx %p)\n",
525 pulSSDIFlags, ulFlags, hMachine);
527 if (pulSSDIFlags ==
NULL)
533 if (hMachine !=
NULL)
572 TRACE(
"CMP_Init_Detection(%lu)\n", ulMagic);
607 WCHAR szNameBuffer[256];
609 DWORD ulUnknown9 = 0;
613 FIXME(
"CMP_RegisterNotification(%p %p %lu %p)\n",
614 hRecipient, lpvNotificationFilter, ulFlags, phDevNotify);
616 if ((hRecipient ==
NULL) ||
617 (lpvNotificationFilter ==
NULL) ||
618 (phDevNotify ==
NULL))
633 if (pNotifyData ==
NULL)
639 ZeroMemory(szNameBuffer,
sizeof(szNameBuffer));
641 if ((ulFlags & DEVICE_NOTIFY_SERVICE_HANDLE) == DEVICE_NOTIFY_WINDOW_HANDLE)
643 FIXME(
"Register a window\n");
653 FIXME(
"Register window: %S\n", szNameBuffer);
655 else if ((ulFlags & DEVICE_NOTIFY_SERVICE_HANDLE) == DEVICE_NOTIFY_SERVICE_HANDLE)
657 FIXME(
"Register a service\n");
668 FIXME(
"Register service: %S\n", szNameBuffer);
676 (
BYTE*)lpvNotificationFilter,
692 *phDevNotify = (HDEVNOTIFY)pNotifyData;
698 *phDevNotify = (HDEVNOTIFY)
NULL;
719 TRACE(
"CMP_Report_LogOn(%lu %lu)\n", dwMagic, dwProcessId);
729 for (
i = 0;
i < 30;
i++)
759 _In_ HDEVNOTIFY hDevNotify)
765 TRACE(
"CMP_UnregisterNotification(%p)\n", hDevNotify);
769 if ((pNotifyData ==
NULL) ||
832 TRACE(
"CMP_WaitServicesAvailable(%p)\n", hMachine);
834 if (hMachine !=
NULL)
871 TRACE(
"CM_Add_Empty_Log_Conf(%p %p %lu %lx)\n",
872 plcLogConf, dnDevInst,
Priority, ulFlags);
893 ULONG ulLogConfTag = 0;
898 FIXME(
"CM_Add_Empty_Log_Conf_Ex(%p %p %lu %lx %p)\n",
899 plcLogConf, dnDevInst,
Priority, ulFlags, hMachine);
904 if (plcLogConf ==
NULL)
916 if (hMachine !=
NULL)
923 if (StringTable == 0)
933 if (lpDevInst ==
NULL)
939 &ulLogConfTag, ulFlags);
950 if (pLogConfInfo ==
NULL)
958 pLogConfInfo->
ulType = ulFlags;
959 pLogConfInfo->
ulTag = ulLogConfTag;
961 *plcLogConf = (
LOG_CONF)pLogConfInfo;
981 TRACE(
"CM_Add_IDA(%p %s %lx)\n",
998 TRACE(
"CM_Add_IDW(%p %s %lx)\n",
1019 TRACE(
"CM_Add_ID_ExA(%p %s %lx %p)\n",
1020 dnDevInst,
debugstr_a(pszID), ulFlags, hMachine);
1049 TRACE(
"CM_Add_ID_ExW(%p %s %lx %p)\n",
1050 dnDevInst,
debugstr_w(pszID), ulFlags, hMachine);
1064 if (hMachine !=
NULL)
1071 if (StringTable == 0)
1081 if (lpDevInst ==
NULL)
1116 FIXME(
"CM_Add_Range(%I64u %I64u %p %lx)\n",
1117 ullStartValue, ullEndValue, rlh, ulFlags);
1127 if (ullEndValue < ullStartValue)
1143 pRange->
ullEnd = ullEndValue;
1177 TRACE(
"CM_Add_Res_Des(%p %p %lu %p %lu %lx)\n",
1178 prdResDes, lcLogConf, ResourceID, ResourceData, ResourceLen, ulFlags);
1181 ResourceLen, ulFlags,
NULL);
1199 FIXME(
"CM_Add_Res_Des_Ex(%p %p %lu %p %lu %lx %p)\n",
1200 prdResDes, lcLogConf, ResourceID,
1201 ResourceData, ResourceLen, ulFlags, hMachine);
1219 TRACE(
"CM_Connect_MachineA(%s %p)\n",
1222 if (UNCServerName ==
NULL || *UNCServerName == 0)
1247 TRACE(
"CM_Connect_MachineW(%s %p)\n",
1250 if (phMachine ==
NULL)
1256 if (pMachine ==
NULL)
1259 if (UNCServerName ==
NULL || *UNCServerName == 0)
1316 TRACE(
"CM_Create_DevNodeA(%p %s %p %lx)\n",
1317 pdnDevInst,
debugstr_a(pDeviceID), dnParent, ulFlags);
1335 TRACE(
"CM_Create_DevNodeW(%p %s %p %lx)\n",
1336 pdnDevInst,
debugstr_w(pDeviceID), dnParent, ulFlags);
1358 TRACE(
"CM_Create_DevNode_ExA(%p %s %p %lx %p)\n",
1359 pdnDevInst,
debugstr_a(pDeviceID), dnParent, ulFlags, hMachine);
1391 TRACE(
"CM_Create_DevNode_ExW(%p %s %p %lx %p)\n",
1392 pdnDevInst,
debugstr_w(pDeviceID), dnParent, ulFlags, hMachine);
1397 if (pdnDevInst ==
NULL)
1409 if (hMachine !=
NULL)
1416 if (StringTable == 0)
1426 if (lpParentDevInst ==
NULL)
1429 wcscpy(szLocalDeviceID, pDeviceID);
1450 if (*pdnDevInst == 0)
1469 FIXME(
"CM_Create_Range_List(%p %lx)\n",
1480 if (pRangeList ==
NULL)
1511 TRACE(
"CM_Delete_Class_Key(%p %lx)\n",
1512 ClassGuid, ulFlags);
1532 TRACE(
"CM_Delete_Class_Key_Ex(%p %lx %p)\n",
1533 ClassGuid, ulFlags, hMachine);
1535 if (ClassGuid ==
NULL)
1544 if (hMachine !=
NULL)
1582 TRACE(
"CM_Delete_DevNode_Key(%p %lu %lx)\n",
1583 dnDevInst, ulHardwareProfile, ulFlags);
1603 PWSTR pszDevInst, pszKeyPath =
NULL, pszInstancePath =
NULL;
1606 FIXME(
"CM_Delete_DevNode_Key_Ex(%p %lu %lx %p)\n",
1607 dnDevInst, ulHardwareProfile, ulFlags, hMachine);
1618 if (hMachine !=
NULL)
1625 if (StringTable == 0)
1635 if (pszDevInst ==
NULL)
1638 TRACE(
"pszDevInst: %S\n", pszDevInst);
1641 if (pszKeyPath ==
NULL)
1648 if (pszInstancePath ==
NULL)
1663 TRACE(
"pszKeyPath: %S\n", pszKeyPath);
1664 TRACE(
"pszInstancePath: %S\n", pszInstancePath);
1668 FIXME(
"The CM_REGISTRY_USER flag is not supported yet!\n");
1681 ulHardwareProfile = 0;
1699 if (pszInstancePath !=
NULL)
1702 if (pszKeyPath !=
NULL)
1720 FIXME(
"CM_Delete_Range(%I64u %I64u %p %lx)\n",
1721 ullStartValue, ullEndValue, rlh, ulFlags);
1740 TRACE(
"CM_Detect_Resource_Conflict(%p %lu %p %lu %p 0x%lx)\n",
1741 dnDevInst, ResourceID, ResourceData, ResourceLen,
1742 pbConflictDetected, ulFlags);
1768 FIXME(
"CM_Detect_Resource_Conflict_Ex(%p %lu %p %lu %p 0x%lx %p)\n",
1769 dnDevInst, ResourceID, ResourceData, ResourceLen,
1770 pbConflictDetected, ulFlags, hMachine);
1785 TRACE(
"CM_Disable_DevNode(%p %lx)\n",
1786 dnDevInst, ulFlags);
1807 TRACE(
"CM_Disable_DevNode_Ex(%p %lx %p)\n",
1808 dnDevInst, ulFlags, hMachine);
1819 if (hMachine !=
NULL)
1826 if (StringTable == 0)
1836 if (lpDevInst ==
NULL)
1868 TRACE(
"CM_Disconnect_Machine(%p)\n", hMachine);
1871 if (pMachine ==
NULL)
1899 FIXME(
"CM_Dup_Range_List(%p %p %lx)\n",
1900 rlhOld, rlhNew, ulFlags);
1915 TRACE(
"CM_Enable_DevNode(%p %lx)\n",
1916 dnDevInst, ulFlags);
1937 TRACE(
"CM_Enable_DevNode_Ex(%p %lx %p)\n",
1938 dnDevInst, ulFlags, hMachine);
1949 if (hMachine !=
NULL)
1956 if (StringTable == 0)
1966 if (lpDevInst ==
NULL)
1997 TRACE(
"CM_Enumerate_Classes(%lx %p %lx)\n",
1998 ulClassIndex, ClassGuid, ulFlags);
2020 TRACE(
"CM_Enumerate_Classes_Ex(%lx %p %lx %p)\n",
2021 ulClassIndex, ClassGuid, ulFlags, hMachine);
2023 if (ClassGuid ==
NULL)
2029 if (hMachine !=
NULL)
2082 TRACE(
"CM_Enumerate_EnumeratorsA(%lu %p %p %lx)\n",
2083 ulEnumIndex,
Buffer, pulLength, ulFlags);
2101 TRACE(
"CM_Enumerate_EnumeratorsW(%lu %p %p %lx)\n",
2102 ulEnumIndex,
Buffer, pulLength, ulFlags);
2126 TRACE(
"CM_Enumerate_Enumerators_ExA(%lu %p %p %lx %p)\n",
2127 ulEnumIndex,
Buffer, pulLength, ulFlags, hMachine);
2135 ulOrigLength = *pulLength;
2175 TRACE(
"CM_Enumerate_Enumerators_ExW(%lu %p %p %lx %p)\n",
2176 ulEnumIndex,
Buffer, pulLength, ulFlags, hMachine);
2186 if (hMachine !=
NULL)
2201 PNP_ENUMERATOR_SUBKEYS,
2232 FIXME(
"CM_Find_Range(%p %I64u %lu %I64u %I64u %p %lx)\n",
2233 pullStart, ullStart, ulLength, ullAlignment, ullEnd, rlh, ulFlags);
2256 FIXME(
"CM_First_Range(%p %p %p %p %lx)\n",
2257 rlh, pullStart, pullEnd, preElement, ulFlags);
2264 if (pullStart ==
NULL || pullEnd ==
NULL || preElement ==
NULL)
2286 *pullEnd = pRange->
ullEnd;
2306 TRACE(
"CM_Free_Log_Conf(%lx %lx)\n",
2307 lcLogConfToBeFreed, ulFlags);
2329 TRACE(
"CM_Free_Log_Conf_Ex(%lx %lx %p)\n",
2330 lcLogConfToBeFreed, ulFlags, hMachine);
2342 if (hMachine !=
NULL)
2349 if (StringTable == 0)
2359 if (lpDevInst ==
NULL)
2367 pLogConfInfo->
ulTag,
2390 TRACE(
"CM_Free_Log_Conf_Handle(%lx)\n", lcLogConf);
2415 FIXME(
"CM_Free_Range_List(%p %lx)\n",
2416 RangeList, ulFlags);
2460 TRACE(
"CM_Free_Res_Des(%p %p %lx)\n",
2461 prdResDes, rdResDes, ulFlags);
2478 FIXME(
"CM_Free_Res_Des_Ex(%p %p %lx %p)\n",
2479 prdResDes, rdResDes, ulFlags, hMachine);
2493 FIXME(
"CM_Free_Res_Des_Handle(%p)\n", rdResDes);
2509 FIXME(
"CM_Free_Resource_Conflict_Handle(%p)\n",
2535 TRACE(
"CM_Get_Child(%p %p %lx)\n",
2536 pdnDevInst, dnDevInst, ulFlags);
2560 TRACE(
"CM_Get_Child_Ex(%p %lx %lx %p)\n",
2561 pdnDevInst, dnDevInst, ulFlags, hMachine);
2563 if (pdnDevInst ==
NULL)
2574 if (hMachine !=
NULL)
2581 if (StringTable == 0)
2591 if (lpDevInst ==
NULL)
2597 PNP_GET_CHILD_DEVICE_INSTANCE,
2618 *pdnDevInst = dwIndex;
2635 TRACE(
"CM_Get_Class_Key_NameA(%p %p %p %lx)\n",
2636 ClassGuid, pszKeyName, pulLength, ulFlags);
2654 TRACE(
"CM_Get_Class_Key_NameW(%p %p %p %lx)\n",
2655 ClassGuid, pszKeyName, pulLength, ulFlags);
2679 TRACE(
"CM_Get_Class_Key_Name_ExA(%p %p %p %lx %p)\n",
2680 ClassGuid, pszKeyName, pulLength, ulFlags, hMachine);
2682 if (ClassGuid ==
NULL || pszKeyName ==
NULL || pulLength ==
NULL)
2685 ulOrigLength = *pulLength;
2703 *pulLength =
lstrlenA(pszKeyName) + 1;
2722 TRACE(
"CM_Get_Class_Key_Name_ExW(%p %p %p %lx %p)\n",
2723 ClassGuid, pszKeyName, pulLength, ulFlags, hMachine);
2725 if (ClassGuid ==
NULL || pszKeyName ==
NULL || pulLength ==
NULL)
2757 TRACE(
"CM_Get_Class_NameA(%p %p %p %lx)\n",
2758 ClassGuid,
Buffer, pulLength, ulFlags);
2776 TRACE(
"CM_Get_Class_NameW(%p %p %p %lx)\n",
2777 ClassGuid,
Buffer, pulLength, ulFlags);
2801 TRACE(
"CM_Get_Class_Name_ExA(%p %p %p %lx %p)\n",
2802 ClassGuid,
Buffer, pulLength, ulFlags, hMachine);
2807 ulOrigLength = *pulLength;
2848 TRACE(
"CM_Get_Class_Name_ExW(%p %p %p %lx %p\n",
2849 ClassGuid,
Buffer, pulLength, ulFlags, hMachine);
2862 if (hMachine !=
NULL)
2911 TRACE(
"CM_Get_Class_Registry_PropertyA(%p %lu %p %p %p %lx %p)\n",
2912 ClassGuid, ulProperty, pulRegDataType,
Buffer, pulLength,
2915 if (pulLength ==
NULL)
2918 if (ulProperty < CM_CRP_MIN || ulProperty >
CM_CRP_MAX)
2926 NULL, &ulLength, ulFlags, hMachine);
2932 if (BufferW ==
NULL)
2937 BufferW, &ulLength, ulFlags, hMachine);
2957 if (*pulLength == 0)
2964 Buffer, pulLength, ulFlags, hMachine);
2988 ULONG ulTransferLength = 0;
2991 TRACE(
"CM_Get_Class_Registry_PropertyW(%p %lu %p %p %p %lx %p)\n",
2992 ClassGuid, ulProperty, pulRegDataType,
Buffer, pulLength,
2995 if (ClassGuid ==
NULL || pulLength ==
NULL)
3006 if (ulProperty < CM_CRP_MIN || ulProperty >
CM_CRP_MAX)
3009 if (hMachine !=
NULL)
3021 ulTransferLength = *pulLength;
3042 if (pulRegDataType !=
NULL)
3043 *pulRegDataType =
ulType;
3060 TRACE(
"CM_Get_Depth(%p %lx %lx)\n",
3061 pulDepth, dnDevInst, ulFlags);
3083 TRACE(
"CM_Get_Depth_Ex(%p %lx %lx %p)\n",
3084 pulDepth, dnDevInst, ulFlags, hMachine);
3086 if (pulDepth ==
NULL)
3095 if (hMachine !=
NULL)
3102 if (StringTable == 0)
3112 if (lpDevInst ==
NULL)
3145 TRACE(
"CM_Get_DevNode_Custom_PropertyA(%lx %s %p %p %p %lx)\n",
3146 dnDevInst, pszCustomPropertyName, pulRegDataType,
3147 Buffer, pulLength, ulFlags);
3151 pulLength, ulFlags,
NULL);
3168 TRACE(
"CM_Get_DevNode_Custom_PropertyW(%lx %s %p %p %p %lx)\n",
3169 dnDevInst,
debugstr_w(pszCustomPropertyName), pulRegDataType,
3170 Buffer, pulLength, ulFlags);
3174 pulLength, ulFlags,
NULL);
3198 TRACE(
"CM_Get_DevNode_Custom_Property_ExA(%lx %s %p %p %p %lx %p)\n",
3199 dnDevInst, pszCustomPropertyName, pulRegDataType,
3200 Buffer, pulLength, ulFlags, hMachine);
3205 ulLengthW = *pulLength *
sizeof(
WCHAR);
3212 if (pszPropertyNameW ==
NULL)
3227 if (ulDataType ==
REG_SZ ||
3240 if (*pulLength == 0)
3246 if (ulLengthW <= *pulLength)
3250 *pulLength = ulLengthW;
3257 *pulRegDataType = ulDataType;
3260 MyFree(pszPropertyNameW);
3284 ULONG ulTransferLength;
3287 TRACE(
"CM_Get_DevNode_Custom_Property_ExW(%lx %s %p %p %p %lx %p)\n",
3288 dnDevInst,
debugstr_w(pszCustomPropertyName), pulRegDataType,
3289 Buffer, pulLength, ulFlags, hMachine);
3294 if (pszCustomPropertyName ==
NULL ||
3295 pulLength ==
NULL ||
3302 if (hMachine !=
NULL)
3309 if (StringTable == 0)
3319 if (lpDevInst ==
NULL)
3322 ulTransferLength = *pulLength;
3328 (
LPWSTR)pszCustomPropertyName,
3343 if (pulRegDataType !=
NULL)
3344 *pulRegDataType = ulDataType;
3364 TRACE(
"CM_Get_DevNode_Registry_PropertyA(%lx %lu %p %p %p %lx)\n",
3365 dnDevInst, ulProperty, pulRegDataType,
Buffer, pulLength, ulFlags);
3369 pulLength, ulFlags,
NULL);
3386 TRACE(
"CM_Get_DevNode_Registry_PropertyW(%lx %lu %p %p %p %lx)\n",
3387 dnDevInst, ulProperty, pulRegDataType,
Buffer, pulLength, ulFlags);
3391 pulLength, ulFlags,
NULL);
3414 TRACE(
"CM_Get_DevNode_Registry_Property_ExA(%lx %lu %p %p %p %lx %p)\n",
3415 dnDevInst, ulProperty, pulRegDataType,
Buffer, pulLength,
3421 LengthW = *pulLength *
sizeof(
WCHAR);
3436 if (ulDataType ==
REG_SZ ||
3449 if (*pulLength == 0)
3455 if (LengthW <= *pulLength)
3459 *pulLength = LengthW;
3466 *pulRegDataType = ulDataType;
3493 ULONG ulTransferLength = 0;
3495 TRACE(
"CM_Get_DevNode_Registry_Property_ExW(%lx %lu %p %p %p %lx %p)\n",
3496 dnDevInst, ulProperty, pulRegDataType,
Buffer, pulLength,
3502 if (ulProperty < CM_DRP_MIN || ulProperty >
CM_DRP_MAX)
3509 if (pulLength ==
NULL)
3512 if (*pulLength == 0)
3518 if (hMachine !=
NULL)
3525 if (StringTable == 0)
3535 if (lpDevInst ==
NULL)
3538 ulTransferLength = *pulLength;
3559 if (pulRegDataType !=
NULL)
3560 *pulRegDataType = ulDataType;
3578 TRACE(
"CM_Get_DevNode_Status(%p %p %lx %lx)\n",
3579 pulStatus, pulProblemNumber, dnDevInst, ulFlags);
3603 TRACE(
"CM_Get_DevNode_Status_Ex(%p %p %lx %lx %p)\n",
3604 pulStatus, pulProblemNumber, dnDevInst, ulFlags, hMachine);
3606 if (pulStatus ==
NULL || pulProblemNumber ==
NULL)
3615 if (hMachine !=
NULL)
3622 if (StringTable == 0)
3632 if (lpDevInst ==
NULL)
3664 TRACE(
"CM_Get_Device_IDA(%lx %p %lu %lx)\n",
3665 dnDevInst,
Buffer, BufferLen, ulFlags);
3682 TRACE(
"CM_Get_Device_IDW(%lx %p %lu %lx)\n",
3683 dnDevInst,
Buffer, BufferLen, ulFlags);
3704 TRACE(
"CM_Get_Device_ID_ExA(%lx %p %lu %lx %p)\n",
3705 dnDevInst,
Buffer, BufferLen, ulFlags, hMachine);
3746 TRACE(
"CM_Get_Device_ID_ExW(%lx %p %lu %lx %p)\n",
3747 dnDevInst,
Buffer, BufferLen, ulFlags, hMachine);
3758 if (hMachine !=
NULL)
3761 if (StringTable ==
NULL)
3791 TRACE(
"CM_Get_Device_ID_ListA(%p %p %lu %lx)\n",
3792 pszFilter,
Buffer, BufferLen, ulFlags);
3810 TRACE(
"CM_Get_Device_ID_ListW(%p %p %lu %lx)\n",
3811 pszFilter,
Buffer, BufferLen, ulFlags);
3834 TRACE(
"CM_Get_Device_ID_List_ExA(%p %p %lu %lx %p)\n",
3835 pszFilter,
Buffer, BufferLen, ulFlags, hMachine);
3838 if (BufferW ==
NULL)
3841 if (pszFilter ==
NULL)
3898 TRACE(
"CM_Get_Device_ID_List_ExW(%p %p %lu %lx %p)\n",
3899 pszFilter,
Buffer, BufferLen, ulFlags, hMachine);
3907 if (hMachine !=
NULL)
3949 TRACE(
"CM_Get_Device_ID_List_SizeA(%p %s %lx)\n",
3966 TRACE(
"CM_Get_Device_ID_List_SizeW(%p %s %lx)\n",
3987 FIXME(
"CM_Get_Device_ID_List_Size_ExA(%p %s %lx %p)\n",
3988 pulLen,
debugstr_a(pszFilter), ulFlags, hMachine);
3990 if (pszFilter ==
NULL)
4028 FIXME(
"CM_Get_Device_ID_List_Size_ExW(%p %s %lx %p)\n",
4029 pulLen,
debugstr_w(pszFilter), ulFlags, hMachine);
4037 if (hMachine !=
NULL)
4078 TRACE(
"CM_Get_Device_ID_Size(%p %lx %lx)\n",
4079 pulLen, dnDevInst, ulFlags);
4099 TRACE(
"CM_Get_Device_ID_Size_Ex(%p %lx %lx %p)\n",
4100 pulLen, dnDevInst, ulFlags, hMachine);
4111 if (hMachine !=
NULL)
4114 if (StringTable ==
NULL)
4124 if (DeviceId ==
NULL)
4148 TRACE(
"CM_Get_Device_Interface_AliasA(%p %p %p %p %lx)\n",
4149 pszDeviceInterface, AliasInterfaceGuid,
4150 pszAliasDeviceInterface, pulLength, ulFlags);
4153 AliasInterfaceGuid, pszAliasDeviceInterface, pulLength,
4170 TRACE(
"CM_Get_Device_Interface_AliasW(%p %p %p %p %lx)\n",
4171 pszDeviceInterface, AliasInterfaceGuid,
4172 pszAliasDeviceInterface, pulLength, ulFlags);
4175 AliasInterfaceGuid, pszAliasDeviceInterface, pulLength,
4193 FIXME(
"CM_Get_Device_Interface_Alias_ExA(%p %p %p %p %lx %p)\n",
4194 pszDeviceInterface, AliasInterfaceGuid,
4195 pszAliasDeviceInterface, pulLength, ulFlags, hMachine);
4215 ULONG ulTransferLength;
4218 TRACE(
"CM_Get_Device_Interface_Alias_ExW(%p %p %p %p %lx %p)\n",
4219 pszDeviceInterface, AliasInterfaceGuid,
4220 pszAliasDeviceInterface, pulLength, ulFlags, hMachine);
4222 if (pszDeviceInterface ==
NULL ||
4223 AliasInterfaceGuid ==
NULL ||
4224 pszAliasDeviceInterface ==
NULL ||
4231 if (hMachine !=
NULL)
4243 ulTransferLength = *pulLength;
4248 (
LPWSTR)pszDeviceInterface,
4250 pszAliasDeviceInterface,
4277 TRACE(
"CM_Get_Device_Interface_ListA(%s %s %p %lu 0x%08lx)\n",
4279 Buffer, BufferLen, ulFlags);
4298 TRACE(
"CM_Get_Device_Interface_ListW(%s %s %p %lu 0x%08lx)\n",
4300 Buffer, BufferLen, ulFlags);
4324 TRACE(
"CM_Get_Device_Interface_List_ExA(%s %s %p %lu 0x%08lx %p)\n",
4326 Buffer, BufferLen, ulFlags, hMachine);
4332 if (pDeviceID !=
NULL)
4339 if (BufferW ==
NULL)
4346 BufferW, BufferLen, ulFlags,
4362 if (BufferW !=
NULL)
4365 if (pDeviceIdW !=
NULL)
4389 TRACE(
"CM_Get_Device_Interface_List_ExW(%s %s %p %lu 0x%08lx %p)\n",
4391 Buffer, BufferLen, ulFlags, hMachine);
4400 if (hMachine !=
NULL)
4445 TRACE(
"CM_Get_Device_Interface_List_SizeA(%p %p %s 0x%08lx)\n",
4449 pDeviceID, ulFlags,
NULL);
4464 TRACE(
"CM_Get_Device_Interface_List_SizeW(%p %p %s 0x%08lx)\n",
4468 pDeviceID, ulFlags,
NULL);
4487 TRACE(
"CM_Get_Device_Interface_List_Size_ExA(%p %p %s 0x%08lx %p)\n",
4493 if (pDeviceID !=
NULL)
4502 pDeviceIdW, ulFlags, hMachine);
4504 if (pDeviceIdW !=
NULL)
4526 TRACE(
"CM_Get_Device_Interface_List_Size_ExW(%p %p %s 0x%08lx %p)\n",
4535 if (hMachine !=
NULL)
4577 TRACE(
"CM_Get_First_Log_Conf(%p %lx %lx)\n",
4578 plcLogConf, dnDevInst, ulFlags);
4602 FIXME(
"CM_Get_First_Log_Conf_Ex(%p %lx %lx %p)\n",
4603 plcLogConf, dnDevInst, ulFlags, hMachine);
4614 if (hMachine !=
NULL)
4621 if (StringTable == 0)
4631 if (lpDevInst ==
NULL)
4654 if (pLogConfInfo ==
NULL)
4659 pLogConfInfo->
ulType = ulFlags;
4662 *plcLogConf = (
LOG_CONF)pLogConfInfo;
4678 TRACE(
"CM_Get_Global_State(%p %lx)\n",
4698 TRACE(
"CM_Get_Global_State_Ex(%p %lx %p)\n",
4699 pulState, ulFlags, hMachine);
4701 if (pulState ==
NULL)
4707 if (hMachine !=
NULL)
4744 TRACE(
"CM_Get_HW_Prof_FlagsA(%s %lu %p %lx)\n",
4745 debugstr_a(szDevInstName), ulHardwareProfile, pulValue, ulFlags);
4748 pulValue, ulFlags,
NULL);
4763 TRACE(
"CM_Get_HW_Prof_FlagsW(%s %lu %p %lx)\n",
4764 debugstr_w(szDevInstName), ulHardwareProfile, pulValue, ulFlags);
4767 pulValue, ulFlags,
NULL);
4786 TRACE(
"CM_Get_HW_Prof_Flags_ExA(%s %lu %p %lx %p)\n",
4787 debugstr_a(szDevInstName), ulHardwareProfile, pulValue, ulFlags, hMachine);
4789 if (szDevInstName !=
NULL)
4796 pulValue, ulFlags, hMachine);
4798 if (pszDevIdW !=
NULL)
4820 FIXME(
"CM_Get_HW_Prof_Flags_ExW(%s %lu %p %lx %p)\n",
4821 debugstr_w(szDevInstName), ulHardwareProfile, pulValue, ulFlags, hMachine);
4823 if ((szDevInstName ==
NULL) || (pulValue ==
NULL))
4831 if (hMachine !=
NULL)
4846 ulHardwareProfile, pulValue,
NULL,
NULL, 0, 0);
4868 TRACE(
"CM_Get_Hardware_Profile_InfoA(%lu %p %lx)\n",
4869 ulIndex, pHWProfileInfo, ulFlags);
4886 TRACE(
"CM_Get_Hardware_Profile_InfoW(%lu %p %lx)\n",
4887 ulIndex, pHWProfileInfo, ulFlags);
4908 TRACE(
"CM_Get_Hardware_Profile_Info_ExA(%lu %p %lx %p)\n",
4909 ulIndex, pHWProfileInfo, ulFlags, hMachine);
4911 if (pHWProfileInfo ==
NULL)
4919 pHWProfileInfo->HWPI_dwFlags = LocalProfileInfo.
HWPI_dwFlags;
4925 pHWProfileInfo->HWPI_szFriendlyName,
4950 TRACE(
"CM_Get_Hardware_Profile_Info_ExW(%lu %p %lx %p)\n",
4951 ulIndex, pHWProfileInfo, ulFlags, hMachine);
4953 if (pHWProfileInfo ==
NULL)
4959 if (hMachine !=
NULL)
4996 TRACE(
"CM_Get_Log_Conf_Priority(%p %p %lx)\n",
4997 lcLogConf, pPriority, ulFlags);
5020 FIXME(
"CM_Get_Log_Conf_Priority_Ex(%p %p %lx %p)\n",
5021 lcLogConf, pPriority, ulFlags, hMachine);
5027 if (pPriority ==
NULL)
5033 if (hMachine !=
NULL)
5040 if (StringTable == 0)
5050 if (lpDevInst ==
NULL)
5058 pLogConfInfo->
ulTag,
5082 TRACE(
"CM_Get_Next_Log_Conf(%p %p %lx)\n",
5083 plcLogConf, lcLogConf, ulFlags);
5108 FIXME(
"CM_Get_Next_Log_Conf_Ex(%p %p %lx %p)\n",
5109 plcLogConf, lcLogConf, ulFlags, hMachine);
5121 if (hMachine !=
NULL)
5128 if (StringTable == 0)
5138 if (lpDevInst ==
NULL)
5146 pLogConfInfo->
ulTag,
5162 if (pNewLogConfInfo ==
NULL)
5168 pNewLogConfInfo->
ulTag = ulNewTag;
5170 *plcLogConf = (
LOG_CONF)pNewLogConfInfo;
5189 TRACE(
"CM_Get_Next_Res_Des(%p %p %lu %p %lx)\n",
5190 prdResDes, rdResDes, ForResource, pResourceID, ulFlags);
5193 pResourceID, ulFlags,
NULL);
5212 ULONG ulInTag, ulOutTag = 0;
5213 ULONG ulInType, ulOutType = 0;
5218 FIXME(
"CM_Get_Next_Res_Des_Ex(%p %p %lu %p %lx %p)\n",
5219 prdResDes, rdResDes, ForResource, pResourceID, ulFlags, hMachine);
5221 if (prdResDes ==
NULL)
5226 FIXME(
"LogConf found!\n");
5232 else if (IsValidResDes((PRES_DES_INFO)rdResDes))
5234 FIXME(
"ResDes found!\n");
5235 dnDevInst = ((PRES_DES_INFO)rdResDes)->dnDevInst;
5236 ulInTag = ((PRES_DES_INFO)rdResDes)->ulTag;
5237 ulInType = ((PRES_DES_INFO)rdResDes)->ulType;
5245 if (hMachine !=
NULL)
5252 if (StringTable == 0)
5262 if (lpDevInst ==
NULL)
5302 TRACE(
"CM_Get_Parent(%p %p %lx)\n",
5303 pdnDevInst, dnDevInst, ulFlags);
5327 TRACE(
"CM_Get_Parent_Ex(%p %lx %lx %p)\n",
5328 pdnDevInst, dnDevInst, ulFlags, hMachine);
5330 if (pdnDevInst ==
NULL)
5341 if (hMachine !=
NULL)
5348 if (StringTable == 0)
5358 if (lpDevInst ==
NULL)
5364 PNP_GET_PARENT_DEVICE_INSTANCE,
5385 *pdnDevInst = dwIndex;
5402 TRACE(
"CM_Get_Res_Des_Data(%p %p %lu %lx)\n",
5403 rdResDes,
Buffer, BufferLen, ulFlags);
5421 FIXME(
"CM_Get_Res_Des_Data_Ex(%p %p %lu %lx %p)\n",
5422 rdResDes,
Buffer, BufferLen, ulFlags, hMachine);
5438 TRACE(
"CM_Get_Res_Des_Data_Size(%p %p %lx)\n",
5456 TRACE(
"CM_Get_Res_Des_Data_Size_Ex(%p %p %lx %p)\n",
5457 pulSize, rdResDes, ulFlags, hMachine);
5474 FIXME(
"CM_Get_Resource_Conflict_Count(%p %p)\n",
5475 clConflictList, pulCount);
5481 if (pulCount ==
NULL)
5500 FIXME(
"CM_Get_Resource_Conflict_CountA(%p %lu %p)\n",
5501 clConflictList, ulIndex, pConflictDetails);
5517 FIXME(
"CM_Get_Resource_Conflict_CountW(%p %lu %p)\n",
5518 clConflictList, ulIndex, pConflictDetails);
5534 TRACE(
"CM_Get_Sibling(%p %p %lx)\n",
5535 pdnDevInst, dnDevInst, ulFlags);
5559 TRACE(
"CM_Get_Sibling_Ex(%p %lx %lx %p)\n",
5560 pdnDevInst, dnDevInst, ulFlags, hMachine);
5562 if (pdnDevInst ==
NULL)
5573 if (hMachine !=
NULL)
5580 if (StringTable == 0)
5590 if (lpDevInst ==
NULL)
5596 PNP_GET_SIBLING_DEVICE_INSTANCE,
5617 *pdnDevInst = dwIndex;
5630 TRACE(
"CM_Get_Version()\n");
5648 TRACE(
"CM_Get_Version_Ex(%p)\n", hMachine);
5650 if (hMachine !=
NULL)
5690 FIXME(
"CM_Intersect_Range_List(%p %p %p %lx)\n",
5691 rlhOld1, rlhOld2, rlhNew, ulFlags);
5708 FIXME(
"CM_Invert_Range_List(%p %p %I64u %lx)\n",
5709 rlhOld, rlhNew, ullMaxValue, ulFlags);
5723 TRACE(
"CM_Is_Dock_Station_Present(%p)\n",
5742 TRACE(
"CM_Is_Dock_Station_Present_Ex(%p %p)\n",
5743 pbPresent, hMachine);
5745 if (pbPresent ==
NULL)
5750 if (hMachine !=
NULL)
5785 TRACE(
"CM_Is_Version_Available(%hu)\n",
5802 WORD wServerVersion;
5805 TRACE(
"CM_Is_Version_Available_Ex(%hu %p)\n",
5806 wVersion, hMachine);
5808 if (wVersion <= 0x400)
5811 if (hMachine !=
NULL)
5836 return (wServerVersion >= wVersion);
5850 TRACE(
"CM_Locate_DevNodeA(%p %s %lx)\n",
5867 TRACE(
"CM_Locate_DevNodeW(%p %s %lx)\n",
5888 TRACE(
"CM_Locate_DevNode_ExA(%p %s %lx %p)\n",
5889 pdnDevInst,
debugstr_a(pDeviceID), ulFlags, hMachine);
5891 if (pDeviceID !=
NULL)
5899 if (pDevIdW !=
NULL)
5922 TRACE(
"CM_Locate_DevNode_ExW(%p %s %lx %p)\n",
5923 pdnDevInst,
debugstr_w(pDeviceID), ulFlags, hMachine);
5925 if (pdnDevInst ==
NULL)
5931 if (hMachine !=
NULL)
5938 if (StringTable == 0)
5949 lstrcpyW(DeviceIdBuffer, pDeviceID);
5985 if (*pdnDevInst == -1)
6004 FIXME(
"CM_Merge_Range_List(%p %p %p %lx)\n",
6005 rlhOld1, rlhOld2, rlhNew, ulFlags);
6024 TRACE(
"CM_Modify_Res_Des(%p %p %lx %p %lu %lx)\n",
6025 prdResDes, rdResDes, ResourceID, ResourceData,
6026 ResourceLen, ulFlags);
6029 ResourceLen, ulFlags,
NULL);
6047 FIXME(
"CM_Modify_Res_Des_Ex(%p %p %lx %p %lu %lx %p)\n",
6048 prdResDes, rdResDes, ResourceID, ResourceData,
6049 ResourceLen, ulFlags, hMachine);
6065 TRACE(
"CM_Move_DevNode(%lx %lx %lx)\n",
6066 dnFromDevInst, dnToDevInst, ulFlags);
6089 FIXME(
"CM_Move_DevNode_Ex(%lx %lx %lx %p)\n",
6090 dnFromDevInst, dnToDevInst, ulFlags, hMachine);
6095 if (dnFromDevInst == 0 || dnToDevInst == 0)
6101 if (hMachine !=
NULL)
6108 if (StringTable == 0)
6118 if (lpFromDevInst ==
NULL)
6122 if (lpToDevInst ==
NULL)
6159 FIXME(
"CM_Next_Range(%p %p %p %lx)\n",
6160 preElement, pullStart, pullEnd, ulFlags);
6167 if (pullStart ==
NULL || pullEnd ==
NULL)
6191 *pullEnd = pRange->
ullEnd;
6215 TRACE(
"CM_Open_Class_KeyA(%p %s %lx %lx %p %lx)\n",
6237 TRACE(
"CM_Open_Class_KeyW(%p %s %lx %lx %p %lx)\n",
6263 TRACE(
"CM_Open_Class_Key_ExA(%p %s %lx %lx %p %lx %p)\n",
6265 samDesired,
Disposition, phkClass, ulFlags, hMachine);
6267 if (pszClassName !=
NULL)
6276 if (pszClassNameW !=
NULL)
6299 DWORD dwDisposition;
6303 TRACE(
"CM_Open_Class_Key_ExW(%p %s %lx %lx %p %lx %p)\n",
6305 samDesired,
Disposition, phkClass, ulFlags, hMachine);
6313 if (phkClass ==
NULL)
6319 pszClassName !=
NULL)
6322 if (hMachine ==
NULL)
6343 if (pClassGuid !=
NULL)
6359 NULL, phkClass, &dwDisposition);
6368 if (pClassGuid !=
NULL)
6377 if (pszClassName !=
NULL)
6400 TRACE(
"CM_Open_DevNode_Key(%lx %lx %lu %lx %p %lx)\n",
6401 dnDevNode, samDesired, ulHardwareProfile,
Disposition, phkDevice, ulFlags);
6426 DWORD dwDisposition;
6430 TRACE(
"CM_Open_DevNode_Key_Ex(%lx %lx %lu %lx %p %lx %p)\n",
6431 dnDevNode, samDesired, ulHardwareProfile,
Disposition, phkDevice, ulFlags, hMachine);
6433 if (phkDevice ==
NULL)
6447 if (hMachine !=
NULL)
6454 if (StringTable == 0)
6464 if (pszDevInst ==
NULL)
6467 TRACE(
"pszDevInst: %S\n", pszDevInst);
6470 if (pszKeyPath ==
NULL)
6477 if (pszInstancePath ==
NULL)
6492 TRACE(
"pszKeyPath: %S\n", pszKeyPath);
6493 TRACE(
"pszInstancePath: %S\n", pszInstancePath);
6496 wcscat(pszKeyPath, pszInstancePath);
6498 TRACE(
"pszKeyPath: %S\n", pszKeyPath);
6500 if (hMachine ==
NULL)
6546 if (pszInstancePath !=
NULL)
6549 if (pszKeyPath !=
NULL)
6568 TRACE(
"CM_Query_And_Remove_SubTreeA(%lx %p %p %lu %lx)\n",
6569 dnAncestor, pVetoType, pszVetoName, ulNameLength, ulFlags);
6572 ulNameLength, ulFlags,
NULL);
6588 TRACE(
"CM_Query_And_Remove_SubTreeW(%lx %p %p %lu %lx)\n",
6589 dnAncestor, pVetoType, pszVetoName, ulNameLength, ulFlags);
6592 ulNameLength, ulFlags,
NULL);
6612 TRACE(
"CM_Query_And_Remove_SubTree_ExA(%lx %p %p %lu %lx %p)\n",
6613 dnAncestor, pVetoType, pszVetoName, ulNameLength,
6616 if (pszVetoName ==
NULL && ulNameLength == 0)
6620 if (lpLocalVetoName ==
NULL)
6624 ulNameLength, ulFlags, hMachine);
6662 TRACE(
"CM_Query_And_Remove_SubTree_ExW(%lx %p %p %lu %lx %p)\n",
6663 dnAncestor, pVetoType, pszVetoName, ulNameLength,
6666 if (dnAncestor == 0)
6672 if (pszVetoName ==
NULL && ulNameLength == 0)
6675 if (hMachine !=
NULL)
6682 if (StringTable == 0)
6692 if (lpDevInst ==
NULL)
6726 TRACE(
"CM_Query_Arbitrator_Free_Data(%p %lu %lx %lu 0x%08lx)\n",
6727 pData, DataLen, dnDevInst, ResourceID, ulFlags);
6730 ResourceID, ulFlags,
NULL);
6752 TRACE(
"CM_Query_Arbitrator_Free_Data_Ex(%p %lu %lx %lu 0x%08lx %p)\n",
6753 pData, DataLen, dnDevInst, ResourceID, ulFlags, hMachine);
6764 if (hMachine !=
NULL)
6771 if (StringTable == 0)
6781 if (lpDevInst ==
NULL)
6814 TRACE(
"CM_Query_Arbitrator_Free_Size(%p %lu %lx 0x%08lx)\n",
6815 pulSize, dnDevInst,ResourceID, ulFlags);
6839 TRACE(
"CM_Query_Arbitrator_Free_Size_Ex(%p %lu %lx 0x%08lx %p)\n",
6840 pulSize, dnDevInst,ResourceID, ulFlags, hMachine);
6851 if (hMachine !=
NULL)
6858 if (StringTable == 0)
6868 if (lpDevInst ==
NULL)
6900 TRACE(
"CM_Query_Remove_SubTree(%lx %lx)\n",
6901 dnAncestor, ulFlags);
6919 TRACE(
"CM_Query_Remove_SubTree_Ex(%lx %lx %p)\n",
6920 dnAncestor, ulFlags, hMachine);
6944 ULONG ulBufferLength;
6948 FIXME(
"CM_Query_Resource_Conflict_List(%p %lx %lu %p %lu %lx %p)\n",
6949 pclConflictList, dnDevInst, ResourceID, ResourceData,
6950 ResourceLen, ulFlags, hMachine);
6958 if (pclConflictList ==
NULL ||
6959 ResourceData ==
NULL ||
6963 if (ResourceID == 0)
6966 *pclConflictList = 0;
6968 if (hMachine !=
NULL)
6975 if (StringTable == 0)
6985 if (lpDevInst ==
NULL)
6989 if (pConflictData ==
NULL)
6998 pConflictBuffer =
MyMalloc(ulBufferLength);
6999 if (pConflictBuffer ==
NULL)
7010 (
PBYTE)ResourceData,
7012 (
PBYTE)pConflictBuffer,
7033 if (pConflictBuffer !=
NULL)
7036 if (pConflictData !=
NULL)
7053 TRACE(
"CM_Reenumerate_DevNode(%lx %lx)\n",
7054 dnDevInst, ulFlags);
7074 FIXME(
"CM_Reenumerate_DevNode_Ex(%lx %lx %p)\n",
7075 dnDevInst, ulFlags, hMachine);
7083 if (hMachine !=
NULL)
7090 if (StringTable == 0)
7100 if (lpDevInst ==
NULL)
7106 PNP_DEVINST_REENUMERATE,
7130 TRACE(
"CM_Register_Device_Driver(%lx 0x%08lx)\n",
7131 dnDevInst, ulFlags);
7152 TRACE(
"CM_Register_Device_Driver_Ex(%lx 0x%08lx %p)\n",
7153 dnDevInst, ulFlags, hMachine);
7161 if (hMachine !=
NULL)
7168 if (StringTable == 0)
7178 if (lpDevInst ==
NULL)
7210 TRACE(
"CM_Register_Device_InterfaceA(%lx %s %s %p %p %lx)\n",
7212 pszReference, pszDeviceInterface, pulLength, ulFlags);
7215 pszReference, pszDeviceInterface,
7216 pulLength, ulFlags,
NULL);
7233 TRACE(
"CM_Register_Device_InterfaceW(%lx %s %s %p %p %lx)\n",
7235 debugstr_w(pszReference), pszDeviceInterface, pulLength, ulFlags);
7238 pszReference, pszDeviceInterface,
7239 pulLength, ulFlags,
NULL);
7258 LPWSTR pszDeviceInterfaceW;
7262 TRACE(
"CM_Register_Device_Interface_ExA(%lx %s %s %p %p %lx %p)\n",
7264 pszDeviceInterface, pulLength, ulFlags, hMachine);
7266 if (pulLength ==
NULL || pszDeviceInterface ==
NULL)
7269 if (pszReference !=
NULL)
7275 ulLength = *pulLength;
7278 if (pszDeviceInterfaceW ==
NULL)
7287 pszDeviceInterfaceW,
7295 pszDeviceInterfaceW,
7304 *pulLength = ulLength;
7307 if (pszDeviceInterfaceW !=
NULL)
7310 if (pszReferenceW !=
NULL)
7334 ULONG ulTransferLength;
7337 TRACE(
"CM_Register_Device_Interface_ExW(%lx %s %s %p %p %lx %p)\n",
7339 pszDeviceInterface, pulLength, ulFlags, hMachine);
7345 pszDeviceInterface ==
NULL ||
7352 if (hMachine !=
NULL)
7359 if (StringTable == 0)
7369 if (lpDevInst ==
NULL)
7372 ulTransferLength = *pulLength;
7406 TRACE(
"CM_Remove_SubTree(%lx %lx)\n",
7407 dnAncestor, ulFlags);
7425 TRACE(
"CM_Remove_SubTree_Ex(%lx %lx %p)\n",
7426 dnAncestor, ulFlags, hMachine);
7444 TRACE(
"CM_Request_Device_EjectA(%lx %p %p %lu %lx)\n",
7445 dnDevInst, pVetoType, pszVetoName, ulNameLength, ulFlags);
7448 ulNameLength, ulFlags,
NULL);
7464 TRACE(
"CM_Request_Device_EjectW(%lx %p %p %lu %lx)\n",
7465 dnDevInst, pVetoType, pszVetoName, ulNameLength, ulFlags);
7468 ulNameLength, ulFlags,
NULL);
7488 TRACE(
"CM_Request_Device_Eject_ExA(%lx %p %p %lu %lx %p)\n",
7489 dnDevInst, pVetoType, pszVetoName, ulNameLength, ulFlags, hMachine);
7491 if (ulNameLength != 0)
7493 if (pszVetoName ==
NULL)
7497 if (lpLocalVetoName ==
NULL)
7502 ulNameLength, ulFlags, hMachine);
7540 TRACE(
"CM_Request_Device_Eject_ExW(%lx %p %p %lu %lx %p)\n",
7541 dnDevInst, pVetoType, pszVetoName, ulNameLength, ulFlags, hMachine);
7549 if (pszVetoName ==
NULL && ulNameLength != 0)
7554 if (ulNameLength == 0)
7557 if (hMachine !=
NULL)
7564 if (StringTable == 0)
7574 if (lpDevInst ==
NULL)
7603 TRACE(
"CM_Request_Eject_PC()\n");
7620 TRACE(
"CM_Request_Eject_PC_Ex(%p)\n", hMachine);
7622 if (hMachine !=
NULL)
7656 TRACE(
"CM_Run_Detection(%lx)\n", ulFlags);
7674 TRACE(
"CM_Run_Detection_Ex(%lx %p)\n",
7683 if (hMachine !=
NULL)
7723 FIXME(
"CM_Set_Class_Registry_PropertyA(%p %lx %p %lu %lx %p)\n",
7724 ClassGuid, ulProperty,
Buffer, ulLength, ulFlags, hMachine);
7743 FIXME(
"CM_Set_Class_Registry_PropertyW(%p %lx %p %lu %lx %p)\n",
7744 ClassGuid, ulProperty,
Buffer, ulLength, ulFlags, hMachine);
7760 TRACE(
"CM_Set_DevNode_Problem(%lx %lx %lx)\n",
7761 dnDevInst, ulProblem, ulFlags);
7783 TRACE(
"CM_Set_DevNode_Problem_Ex(%lx %lx %lx %p)\n",
7784 dnDevInst, ulProblem, ulFlags, hMachine);
7792 if (hMachine !=
NULL)
7799 if (StringTable == 0)
7809 if (lpDevInst ==
NULL)
7841 TRACE(
"CM_Set_DevNode_Registry_PropertyA(%lx %lu %p %lx %lx)\n",
7842 dnDevInst, ulProperty,
Buffer, ulLength, ulFlags);
7862 TRACE(
"CM_Set_DevNode_Registry_PropertyW(%lx %lu %p %lx %lx)\n",
7863 dnDevInst, ulProperty,
Buffer, ulLength, ulFlags);
7888 FIXME(
"CM_Set_DevNode_Registry_Property_ExA(%lx %lu %p %lx %lx %p)\n",
7889 dnDevInst, ulProperty,
Buffer, ulLength, ulFlags, hMachine);
7894 if (ulProperty < CM_DRP_MIN || ulProperty >
CM_DRP_MAX)
7933 ulLength *
sizeof(
WCHAR),
7976 TRACE(
"CM_Set_DevNode_Registry_Property_ExW(%lx %lu %p %lx %lx %p)\n",
7977 dnDevInst, ulProperty,
Buffer, ulLength, ulFlags, hMachine);
7982 if (ulProperty < CM_DRP_MIN || ulProperty >
CM_DRP_MAX)
7991 if (hMachine !=
NULL)
7998 if (StringTable == 0)
8008 if (lpDevInst ==
NULL)
8043 TRACE(
"CM_Set_HW_Prof(%lu %lx)\n",
8044 ulHardwareProfile, ulFlags);
8063 TRACE(
"CM_Set_HW_Prof_Ex(%lu %lx %p)\n",
8064 ulHardwareProfile, ulFlags, hMachine);
8072 if (hMachine !=
NULL)
8109 TRACE(
"CM_Set_HW_Prof_FlagsA(%s %lu %lu %lx)\n",
8110 debugstr_a(szDevInstName), ulConfig, ulValue, ulFlags);
8128 TRACE(
"CM_Set_HW_Prof_FlagsW(%s %lu %lu %lx)\n",
8129 debugstr_w(szDevInstName), ulConfig, ulValue, ulFlags);
8151 TRACE(
"CM_Set_HW_Prof_Flags_ExA(%s %lu %lu %lx %p)\n",
8152 debugstr_a(szDevInstName), ulConfig, ulValue, ulFlags, hMachine);
8154 if (szDevInstName !=
NULL)
8163 if (pszDevIdW !=
NULL)
8185 FIXME(
"CM_Set_HW_Prof_Flags_ExW(%s %lu %lu %lx %p)\n",
8186 debugstr_w(szDevInstName), ulConfig, ulValue, ulFlags, hMachine);
8188 if (szDevInstName ==
NULL)
8196 if (hMachine !=
NULL)
8211 ulConfig, &ulValue,
NULL,
NULL, 0, 0);
8232 TRACE(
"CM_Setup_DevNode(%lx %lx)\n",
8233 dnDevInst, ulFlags);
8254 FIXME(
"CM_Setup_DevNode_Ex(%lx %lx %p)\n",
8255 dnDevInst, ulFlags, hMachine);
8266 if (hMachine !=
NULL)
8273 if (StringTable == 0)
8283 if (lpDevInst ==
NULL)
8315 FIXME(
"CM_Test_Range_Available(%I64u %I64u %p %lx)\n",
8316 ullStartValue, ullEndValue, rlh, ulFlags);
8330 TRACE(
"CM_Uninstall_DevNode(%lx %lx)\n",
8331 dnPhantom, ulFlags);
8352 TRACE(
"CM_Uninstall_DevNode_Ex(%lx %lx %p)\n",
8353 dnPhantom, ulFlags, hMachine);
8361 if (hMachine !=
NULL)
8368 if (StringTable == 0)
8378 if (lpDevInst ==
NULL)
8406 TRACE(
"CM_Unregister_Device_InterfaceA(%s %lx)\n",
8423 TRACE(
"CM_Unregister_Device_InterfaceW(%s %lx)\n",
8444 TRACE(
"CM_Unregister_Device_Interface_ExA(%s %lx %p)\n",
8445 debugstr_a(pszDeviceInterface), ulFlags, hMachine);
8447 if (pszDeviceInterface ==
NULL)
8456 if (pszDeviceInterfaceW !=
NULL)
8457 MyFree(pszDeviceInterfaceW);
8476 TRACE(
"CM_Unregister_Device_Interface_ExW(%s %lx %p)\n",
8477 debugstr_w(pszDeviceInterface), ulFlags, hMachine);
8479 if (pszDeviceInterface ==
NULL)
8485 if (hMachine !=
NULL)
8500 (
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_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_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)
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)
DWORD WINAPI I_ScPnPGetServiceName(IN SERVICE_STATUS_HANDLE hServiceStatus, OUT LPWSTR lpServiceName, IN DWORD cchServiceName)
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)
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)
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)
#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
#define EXCEPTION_EXECUTE_HANDLER
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
unsigned long long DWORDLONG
LPWSTR WINAPI lstrcatW(LPWSTR lpString1, LPCWSTR lpString2)
int WINAPI lstrlenA(LPCSTR lpString)
#define memcpy(s1, s2, n)
#define _In_reads_bytes_(size)
#define _Out_writes_bytes_(size)
#define _Out_writes_(size)
#define _Out_writes_opt_(size)
#define _In_reads_bytes_opt_(size)
#define _Out_writes_bytes_opt_(size)
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Reserved_ ULONG _In_opt_ PUNICODE_STRING _In_ ULONG _Out_opt_ PULONG Disposition
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)
_CRTIMP wchar_t *__cdecl wcscpy(_Out_writes_z_(_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
_CRTIMP wchar_t *__cdecl wcscat(_Inout_updates_z_(_String_length_(_Dest)+_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
#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
SERVICE_STATUS_HANDLE hServiceStatus
int WINAPI GetWindowTextW(HWND hWnd, LPWSTR lpString, int nMaxCount)
DWORD WINAPI GetCurrentProcessId(void)
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD dwTimeout
_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