| 1 | /* | 
 
 
 
 
 | 2 | * cfgmgr32.h | 
 
 
 
 
 | 3 | * | 
 
 
 
 
 | 4 | * PnP configuration manager | 
 
 
 
 
 | 5 | * | 
 
 
 
 
 | 6 | * This file is part of the w32api package. | 
 
 
 
 
 | 7 | * | 
 
 
 
 
 | 8 | * Contributors: | 
 
 
 
 
 | 9 | *   Created by Casper S. Hornstrup <chorns@users.sourceforge.net> | 
 
 
 
 
 | 10 | * | 
 
 
 
 
 | 11 | * THIS SOFTWARE IS NOT COPYRIGHTED | 
 
 
 
 
 | 12 | * | 
 
 
 
 
 | 13 | * This source code is offered for use in the public domain. You may | 
 
 
 
 
 | 14 | * use, modify or distribute it freely. | 
 
 
 
 
 | 15 | * | 
 
 
 
 
 | 16 | * This code is distributed in the hope that it will be useful but | 
 
 
 
 
 | 17 | * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | 
 
 
 
 
 | 18 | * DISCLAIMED. This includes but is not limited to warranties of | 
 
 
 
 
 | 19 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | 
 
 
 
 
 | 20 | * | 
 
 
 
 
 | 21 | */ | 
 
 
 
 
 | 22 |  | 
 
 
 
 
 | 23 | #ifndef __CFGMGR32_H | 
 
 
 
 
 | 24 | #define __CFGMGR32_H | 
 
 
 
 
 | 25 |  | 
 
 
 
 
 | 26 | #if __GNUC__ >=3 | 
 
 
 
 
 | 27 | #pragma GCC system_header | 
 
 
 
 
 | 28 | #endif | 
 
 
 
 
 | 29 |  | 
 
 
 
 
 | 30 | #ifdef __cplusplus | 
 
 
 
 
 | 31 | extern "C" { | 
 
 
 
 
 | 32 | #endif | 
 
 
 
 
 | 33 |  | 
 
 
 
 
 | 34 | #include "ntddk.h" | 
 
 
 
 
 | 35 |  | 
 
 
 
 
 | 36 | #if defined(_CFGMGR32_) | 
 
 
 
 
 | 37 | #define CMAPI DECLSPEC_EXPORT | 
 
 
 
 
 | 38 | #else | 
 
 
 
 
 | 39 | #define CMAPI DECLSPEC_IMPORT | 
 
 
 
 
 | 40 | #endif | 
 
 
 
 
 | 41 |  | 
 
 
 
 
 | 42 | #include "cfg.h" | 
 
 
 
 
 | 43 |  | 
 
 
 
 
 | 44 | #include <pshpack1.h> | 
 
 
 
 
 | 45 |  | 
 
 
 
 
 | 46 | #define CR_SUCCESS                                      0x00000000 | 
 
 
 
 
 | 47 | #define CR_DEFAULT                        0x00000001 | 
 
 
 
 
 | 48 | #define CR_OUT_OF_MEMORY                  0x00000002 | 
 
 
 
 
 | 49 | #define CR_INVALID_POINTER                0x00000003 | 
 
 
 
 
 | 50 | #define CR_INVALID_FLAG                   0x00000004 | 
 
 
 
 
 | 51 | #define CR_INVALID_DEVNODE                0x00000005 | 
 
 
 
 
 | 52 | #define CR_INVALID_DEVINST                              CR_INVALID_DEVNODE | 
 
 
 
 
 | 53 | #define CR_INVALID_RES_DES                0x00000006 | 
 
 
 
 
 | 54 | #define CR_INVALID_LOG_CONF               0x00000007 | 
 
 
 
 
 | 55 | #define CR_INVALID_ARBITRATOR             0x00000008 | 
 
 
 
 
 | 56 | #define CR_INVALID_NODELIST               0x00000009 | 
 
 
 
 
 | 57 | #define CR_DEVNODE_HAS_REQS               0x0000000A | 
 
 
 
 
 | 58 | #define CR_DEVINST_HAS_REQS                             CR_DEVNODE_HAS_REQS | 
 
 
 
 
 | 59 | #define CR_INVALID_RESOURCEID             0x0000000B | 
 
 
 
 
 | 60 | #define CR_DLVXD_NOT_FOUND                0x0000000C | 
 
 
 
 
 | 61 | #define CR_NO_SUCH_DEVNODE                0x0000000D | 
 
 
 
 
 | 62 | #define CR_NO_SUCH_DEVINST                              CR_NO_SUCH_DEVNODE | 
 
 
 
 
 | 63 | #define CR_NO_MORE_LOG_CONF               0x0000000E | 
 
 
 
 
 | 64 | #define CR_NO_MORE_RES_DES                0x0000000F | 
 
 
 
 
 | 65 | #define CR_ALREADY_SUCH_DEVNODE           0x00000010 | 
 
 
 
 
 | 66 | #define CR_ALREADY_SUCH_DEVINST                         CR_ALREADY_SUCH_DEVNODE | 
 
 
 
 
 | 67 | #define CR_INVALID_RANGE_LIST             0x00000011 | 
 
 
 
 
 | 68 | #define CR_INVALID_RANGE                  0x00000012 | 
 
 
 
 
 | 69 | #define CR_FAILURE                        0x00000013 | 
 
 
 
 
 | 70 | #define CR_NO_SUCH_LOGICAL_DEV            0x00000014 | 
 
 
 
 
 | 71 | #define CR_CREATE_BLOCKED                 0x00000015 | 
 
 
 
 
 | 72 | #define CR_NOT_SYSTEM_VM                  0x00000016 | 
 
 
 
 
 | 73 | #define CR_REMOVE_VETOED                  0x00000017 | 
 
 
 
 
 | 74 | #define CR_APM_VETOED                     0x00000018 | 
 
 
 
 
 | 75 | #define CR_INVALID_LOAD_TYPE              0x00000019 | 
 
 
 
 
 | 76 | #define CR_BUFFER_SMALL                   0x0000001A | 
 
 
 
 
 | 77 | #define CR_NO_ARBITRATOR                  0x0000001B | 
 
 
 
 
 | 78 | #define CR_NO_REGISTRY_HANDLE             0x0000001C | 
 
 
 
 
 | 79 | #define CR_REGISTRY_ERROR                 0x0000001D | 
 
 
 
 
 | 80 | #define CR_INVALID_DEVICE_ID              0x0000001E | 
 
 
 
 
 | 81 | #define CR_INVALID_DATA                   0x0000001F | 
 
 
 
 
 | 82 | #define CR_INVALID_API                    0x00000020 | 
 
 
 
 
 | 83 | #define CR_DEVLOADER_NOT_READY            0x00000021 | 
 
 
 
 
 | 84 | #define CR_NEED_RESTART                   0x00000022 | 
 
 
 
 
 | 85 | #define CR_NO_MORE_HW_PROFILES            0x00000023 | 
 
 
 
 
 | 86 | #define CR_DEVICE_NOT_THERE               0x00000024 | 
 
 
 
 
 | 87 | #define CR_NO_SUCH_VALUE                  0x00000025 | 
 
 
 
 
 | 88 | #define CR_WRONG_TYPE                     0x00000026 | 
 
 
 
 
 | 89 | #define CR_INVALID_PRIORITY               0x00000027 | 
 
 
 
 
 | 90 | #define CR_NOT_DISABLEABLE                0x00000028 | 
 
 
 
 
 | 91 | #define CR_FREE_RESOURCES                 0x00000029 | 
 
 
 
 
 | 92 | #define CR_QUERY_VETOED                   0x0000002A | 
 
 
 
 
 | 93 | #define CR_CANT_SHARE_IRQ                 0x0000002B | 
 
 
 
 
 | 94 | #define CR_NO_DEPENDENT                   0x0000002C | 
 
 
 
 
 | 95 | #define CR_SAME_RESOURCES                 0x0000002D | 
 
 
 
 
 | 96 | #define CR_NO_SUCH_REGISTRY_KEY           0x0000002E | 
 
 
 
 
 | 97 | #define CR_INVALID_MACHINENAME            0x0000002F | 
 
 
 
 
 | 98 | #define CR_REMOTE_COMM_FAILURE            0x00000030 | 
 
 
 
 
 | 99 | #define CR_MACHINE_UNAVAILABLE            0x00000031 | 
 
 
 
 
 | 100 | #define CR_NO_CM_SERVICES                 0x00000032 | 
 
 
 
 
 | 101 | #define CR_ACCESS_DENIED                  0x00000033 | 
 
 
 
 
 | 102 | #define CR_CALL_NOT_IMPLEMENTED           0x00000034 | 
 
 
 
 
 | 103 | #define CR_INVALID_PROPERTY               0x00000035 | 
 
 
 
 
 | 104 | #define CR_DEVICE_INTERFACE_ACTIVE        0x00000036 | 
 
 
 
 
 | 105 | #define CR_NO_SUCH_DEVICE_INTERFACE       0x00000037 | 
 
 
 
 
 | 106 | #define CR_INVALID_REFERENCE_STRING       0x00000038 | 
 
 
 
 
 | 107 | #define CR_INVALID_CONFLICT_LIST          0x00000039 | 
 
 
 
 
 | 108 | #define CR_INVALID_INDEX                  0x0000003A | 
 
 
 
 
 | 109 | #define CR_INVALID_STRUCTURE_SIZE         0x0000003B | 
 
 
 
 
 | 110 |  | 
 
 
 
 
 | 111 |  | 
 
 
 
 
 | 112 | typedef DWORD RETURN_TYPE; | 
 
 
 
 
 | 113 | typedef RETURN_TYPE     CONFIGRET; | 
 
 
 
 
 | 114 |  | 
 
 
 
 
 | 115 | typedef HANDLE HMACHINE; | 
 
 
 
 
 | 116 | typedef HMACHINE *PHMACHINE; | 
 
 
 
 
 | 117 |  | 
 
 
 
 
 | 118 | typedef DWORD_PTR RES_DES; | 
 
 
 
 
 | 119 | typedef RES_DES *PRES_DES; | 
 
 
 
 
 | 120 |  | 
 
 
 
 
 | 121 | typedef DWORD_PTR RANGE_ELEMENT; | 
 
 
 
 
 | 122 | typedef RANGE_ELEMENT *PRANGE_ELEMENT; | 
 
 
 
 
 | 123 |  | 
 
 
 
 
 | 124 | typedef ULONG_PTR CONFLICT_LIST; | 
 
 
 
 
 | 125 | typedef CONFLICT_LIST *PCONFLICT_LIST; | 
 
 
 
 
 | 126 |  | 
 
 
 
 
 | 127 | typedef DWORD_PTR LOG_CONF; | 
 
 
 
 
 | 128 | typedef LOG_CONF *PLOG_CONF; | 
 
 
 
 
 | 129 |  | 
 
 
 
 
 | 130 | typedef ULONG PRIORITY; | 
 
 
 
 
 | 131 | typedef PRIORITY *PPRIORITY; | 
 
 
 
 
 | 132 |  | 
 
 
 
 
 | 133 | typedef DWORD_PTR RANGE_LIST; | 
 
 
 
 
 | 134 | typedef RANGE_LIST *PRANGE_LIST; | 
 
 
 
 
 | 135 |  | 
 
 
 
 
 | 136 | typedef DWORD DEVNODE, DEVINST; | 
 
 
 
 
 | 137 | typedef DEVNODE *PDEVNODE, *PDEVINST; | 
 
 
 
 
 | 138 |  | 
 
 
 
 
 | 139 | typedef CHAR *DEVNODEID_A, *DEVINSTID_A; | 
 
 
 
 
 | 140 | typedef WCHAR *DEVNODEID_W, *DEVINSTID_W; | 
 
 
 
 
 | 141 |  | 
 
 
 
 
 | 142 | #ifdef UNICODE | 
 
 
 
 
 | 143 | typedef DEVNODEID_W DEVNODEID; | 
 
 
 
 
 | 144 | typedef DEVINSTID_W DEVINSTID; | 
 
 
 
 
 | 145 | #else | 
 
 
 
 
 | 146 | typedef DEVNODEID_A DEVNODEID; | 
 
 
 
 
 | 147 | typedef DEVINSTID_A DEVINSTID; | 
 
 
 
 
 | 148 | #endif | 
 
 
 
 
 | 149 |  | 
 
 
 
 
 | 150 | typedef ULONG REGDISPOSITION; | 
 
 
 
 
 | 151 |  | 
 
 
 
 
 | 152 | typedef ULONG RESOURCEID; | 
 
 
 
 
 | 153 | typedef RESOURCEID *PRESOURCEID; | 
 
 
 
 
 | 154 |  | 
 
 
 
 
 | 155 | #define CM_RESDES_WIDTH_DEFAULT                                         0x00000000 | 
 
 
 
 
 | 156 | #define CM_RESDES_WIDTH_32                                              0x00000001 | 
 
 
 
 
 | 157 | #define CM_RESDES_WIDTH_64                                              0x00000002 | 
 
 
 
 
 | 158 | #define CM_RESDES_WIDTH_BITS                                            0x00000003 | 
 
 
 
 
 | 159 |  | 
 
 
 
 
 | 160 |  | 
 
 
 
 
 | 161 | #define MAX_CONFIG_VALUE                                                9999 | 
 
 
 
 
 | 162 | #define MAX_INSTANCE_VALUE                                              9999 | 
 
 
 
 
 | 163 |  | 
 
 
 
 
 | 164 | #define MAX_DEVICE_ID_LEN                                               200 | 
 
 
 
 
 | 165 | #define MAX_DEVNODE_ID_LEN                                              MAX_DEVICE_ID_LEN | 
 
 
 
 
 | 166 |  | 
 
 
 
 
 | 167 | #define MAX_CLASS_NAME_LEN                                              32 | 
 
 
 
 
 | 168 | #define MAX_GUID_STRING_LEN                                             39 | 
 
 
 
 
 | 169 | #define MAX_PROFILE_LEN                                                 80 | 
 
 
 
 
 | 170 |  | 
 
 
 
 
 | 171 |  | 
 
 
 
 
 | 172 | #define ResType_All                       0x00000000 | 
 
 
 
 
 | 173 | #define ResType_None                      0x00000000 | 
 
 
 
 
 | 174 | #define ResType_Mem                       0x00000001 | 
 
 
 
 
 | 175 | #define ResType_IO                        0x00000002 | 
 
 
 
 
 | 176 | #define ResType_DMA                       0x00000003 | 
 
 
 
 
 | 177 | #define ResType_IRQ                       0x00000004 | 
 
 
 
 
 | 178 | #define ResType_DoNotUse                  0x00000005 | 
 
 
 
 
 | 179 | #define ResType_BusNumber                 0x00000006 | 
 
 
 
 
 | 180 | #define ResType_MAX                       0x00000006 | 
 
 
 
 
 | 181 | #define ResType_Ignored_Bit               0x00008000 | 
 
 
 
 
 | 182 | #define ResType_ClassSpecific             0x0000FFFF | 
 
 
 
 
 | 183 | #define ResType_Reserved                  0x00008000 | 
 
 
 
 
 | 184 | #define ResType_DevicePrivate             0x00008001 | 
 
 
 
 
 | 185 | #define ResType_PcCardConfig              0x00008002 | 
 
 
 
 
 | 186 | #define ResType_MfCardConfig              0x00008003 | 
 
 
 
 
 | 187 |  | 
 
 
 
 
 | 188 | #define CM_GETIDLIST_FILTER_NONE                        0x00000000 | 
 
 
 
 
 | 189 | #define CM_GETIDLIST_FILTER_ENUMERATOR        0x00000001 | 
 
 
 
 
 | 190 | #define CM_GETIDLIST_FILTER_SERVICE           0x00000002 | 
 
 
 
 
 | 191 | #define CM_GETIDLIST_FILTER_EJECTRELATIONS    0x00000004 | 
 
 
 
 
 | 192 | #define CM_GETIDLIST_FILTER_REMOVALRELATIONS  0x00000008 | 
 
 
 
 
 | 193 | #define CM_GETIDLIST_FILTER_POWERRELATIONS    0x00000010 | 
 
 
 
 
 | 194 | #define CM_GETIDLIST_FILTER_BUSRELATIONS      0x00000020 | 
 
 
 
 
 | 195 | #define CM_GETIDLIST_DONOTGENERATE            0x10000040 | 
 
 
 
 
 | 196 | #define CM_GETIDLIST_FILTER_BITS              0x1000007F | 
 
 
 
 
 | 197 |  | 
 
 
 
 
 | 198 | #define CM_GET_DEVICE_INTERFACE_LIST_PRESENT            0x00000000 | 
 
 
 
 
 | 199 | #define CM_GET_DEVICE_INTERFACE_LIST_ALL_DEVICES        0x00000001 | 
 
 
 
 
 | 200 | #define CM_GET_DEVICE_INTERFACE_LIST_BITS               0x00000001 | 
 
 
 
 
 | 201 |  | 
 
 
 
 
 | 202 |  | 
 
 
 
 
 | 203 | typedef struct BusNumber_Des_s { | 
 
 
 
 
 | 204 | DWORD  BUSD_Count; | 
 
 
 
 
 | 205 | DWORD  BUSD_Type; | 
 
 
 
 
 | 206 | DWORD  BUSD_Flags; | 
 
 
 
 
 | 207 | ULONG  BUSD_Alloc_Base; | 
 
 
 
 
 | 208 | ULONG  BUSD_Alloc_End; | 
 
 
 
 
 | 209 | } BUSNUMBER_DES, *PBUSNUMBER_DES; | 
 
 
 
 
 | 210 |  | 
 
 
 
 
 | 211 | typedef struct BusNumber_Range_s { | 
 
 
 
 
 | 212 | ULONG  BUSR_Min; | 
 
 
 
 
 | 213 | ULONG  BUSR_Max; | 
 
 
 
 
 | 214 | ULONG  BUSR_nBusNumbers; | 
 
 
 
 
 | 215 | ULONG  BUSR_Flags; | 
 
 
 
 
 | 216 | } BUSNUMBER_RANGE, *PBUSNUMBER_RANGE; | 
 
 
 
 
 | 217 |  | 
 
 
 
 
 | 218 | #define BusNumberType_Range sizeof(BUSNUMBER_RANGE) | 
 
 
 
 
 | 219 |  | 
 
 
 
 
 | 220 | typedef struct BusNumber_Resource_s { | 
 
 
 
 
 | 221 | BUSNUMBER_DES  BusNumber_Header; | 
 
 
 
 
 | 222 | BUSNUMBER_RANGE  BusNumber_Data[ANYSIZE_ARRAY]; | 
 
 
 
 
 | 223 | } BUSNUMBER_RESOURCE, *PBUSNUMBER_RESOURCE; | 
 
 
 
 
 | 224 |  | 
 
 
 
 
 | 225 | typedef struct CS_Des_s { | 
 
 
 
 
 | 226 | DWORD  CSD_SignatureLength; | 
 
 
 
 
 | 227 | DWORD  CSD_LegacyDataOffset; | 
 
 
 
 
 | 228 | DWORD  CSD_LegacyDataSize; | 
 
 
 
 
 | 229 | DWORD  CSD_Flags; | 
 
 
 
 
 | 230 | GUID  CSD_ClassGuid; | 
 
 
 
 
 | 231 | BYTE  CSD_Signature[ANYSIZE_ARRAY]; | 
 
 
 
 
 | 232 | } CS_DES, *PCS_DES; | 
 
 
 
 
 | 233 |  | 
 
 
 
 
 | 234 | typedef struct CS_Resource_s { | 
 
 
 
 
 | 235 | CS_DES  CS_Header; | 
 
 
 
 
 | 236 | } CS_RESOURCE, *PCS_RESOURCE; | 
 
 
 
 
 | 237 |  | 
 
 
 
 
 | 238 | typedef struct DevPrivate_Des_s { | 
 
 
 
 
 | 239 | DWORD  PD_Count; | 
 
 
 
 
 | 240 | DWORD  PD_Type; | 
 
 
 
 
 | 241 | DWORD  PD_Data1; | 
 
 
 
 
 | 242 | DWORD  PD_Data2; | 
 
 
 
 
 | 243 | DWORD  PD_Data3; | 
 
 
 
 
 | 244 | DWORD  PD_Flags; | 
 
 
 
 
 | 245 | } DEVPRIVATE_DES, *PDEVPRIVATE_DES; | 
 
 
 
 
 | 246 |  | 
 
 
 
 
 | 247 | typedef struct DevPrivate_Range_s { | 
 
 
 
 
 | 248 | DWORD  PR_Data1; | 
 
 
 
 
 | 249 | DWORD  PR_Data2; | 
 
 
 
 
 | 250 | DWORD  PR_Data3; | 
 
 
 
 
 | 251 | } DEVPRIVATE_RANGE, *PDEVPRIVATE_RANGE; | 
 
 
 
 
 | 252 |  | 
 
 
 
 
 | 253 | #define PType_Range sizeof(DEVPRIVATE_RANGE) | 
 
 
 
 
 | 254 |  | 
 
 
 
 
 | 255 | typedef struct DevPrivate_Resource_s { | 
 
 
 
 
 | 256 | DEVPRIVATE_DES  PRV_Header; | 
 
 
 
 
 | 257 | DEVPRIVATE_RANGE  PRV_Data[ANYSIZE_ARRAY]; | 
 
 
 
 
 | 258 | } DEVPRIVATE_RESOURCE, *PDEVPRIVATE_RESOURCE; | 
 
 
 
 
 | 259 |  | 
 
 
 
 
 | 260 | /* DMA_DES.DD_Flags constants and masks */ | 
 
 
 
 
 | 261 | #define mDD_Width                                                                       0x3 | 
 
 
 
 
 | 262 | #define fDD_BYTE                                                                        0x0 | 
 
 
 
 
 | 263 | #define fDD_WORD                                                                        0x1 | 
 
 
 
 
 | 264 | #define fDD_DWORD                                                                       0x2 | 
 
 
 
 
 | 265 | #define fDD_BYTE_AND_WORD                                                               0x3 | 
 
 
 
 
 | 266 |  | 
 
 
 
 
 | 267 | #define mDD_BusMaster                                                                   0x4 | 
 
 
 
 
 | 268 | #define fDD_NoBusMaster                                                                 0x0 | 
 
 
 
 
 | 269 | #define fDD_BusMaster                                                                   0x4 | 
 
 
 
 
 | 270 |  | 
 
 
 
 
 | 271 | #define mDD_Type                                                                                0x18 | 
 
 
 
 
 | 272 | #define fDD_TypeStandard                                                                        0x00 | 
 
 
 
 
 | 273 | #define fDD_TypeA                                                                               0x08 | 
 
 
 
 
 | 274 | #define fDD_TypeB                                                                               0x10 | 
 
 
 
 
 | 275 | #define fDD_TypeF                                                                               0x18 | 
 
 
 
 
 | 276 |  | 
 
 
 
 
 | 277 | typedef struct DMA_Des_s { | 
 
 
 
 
 | 278 | DWORD  DD_Count; | 
 
 
 
 
 | 279 | DWORD  DD_Type; | 
 
 
 
 
 | 280 | DWORD  DD_Flags; | 
 
 
 
 
 | 281 | ULONG  DD_Alloc_Chan; | 
 
 
 
 
 | 282 | } DMA_DES, *PDMA_DES; | 
 
 
 
 
 | 283 |  | 
 
 
 
 
 | 284 | typedef struct DMA_Range_s { | 
 
 
 
 
 | 285 | ULONG  DR_Min; | 
 
 
 
 
 | 286 | ULONG  DR_Max; | 
 
 
 
 
 | 287 | ULONG  DR_Flags; | 
 
 
 
 
 | 288 | } DMA_RANGE, *PDMA_RANGE; | 
 
 
 
 
 | 289 |  | 
 
 
 
 
 | 290 | #define DType_Range sizeof(DMA_RANGE) | 
 
 
 
 
 | 291 |  | 
 
 
 
 
 | 292 | typedef struct DMA_Resource_s { | 
 
 
 
 
 | 293 | DMA_DES  DMA_Header; | 
 
 
 
 
 | 294 | DMA_RANGE  DMA_Data[ANYSIZE_ARRAY]; | 
 
 
 
 
 | 295 | } DMA_RESOURCE, *PDMA_RESOURCE; | 
 
 
 
 
 | 296 |  | 
 
 
 
 
 | 297 | /* IO_DES.Type constants and masks */ | 
 
 
 
 
 | 298 | #define fIOD_PortType                                                                           0x1 | 
 
 
 
 
 | 299 | #define fIOD_Memory                                                                             0x0 | 
 
 
 
 
 | 300 | #define fIOD_IO                                                                                 0x1 | 
 
 
 
 
 | 301 | #define fIOD_DECODE                                                                             0x00fc | 
 
 
 
 
 | 302 | #define fIOD_10_BIT_DECODE                                              0x0004 | 
 
 
 
 
 | 303 | #define fIOD_12_BIT_DECODE                                              0x0008 | 
 
 
 
 
 | 304 | #define fIOD_16_BIT_DECODE                                              0x0010 | 
 
 
 
 
 | 305 | #define fIOD_POSITIVE_DECODE                                            0x0020 | 
 
 
 
 
 | 306 | #define fIOD_PASSIVE_DECODE                                             0x0040 | 
 
 
 
 
 | 307 | #define fIOD_WINDOW_DECODE                                              0x0080 | 
 
 
 
 
 | 308 |  | 
 
 
 
 
 | 309 | typedef struct IO_Des_s { | 
 
 
 
 
 | 310 | DWORD  IOD_Count; | 
 
 
 
 
 | 311 | DWORD  IOD_Type; | 
 
 
 
 
 | 312 | DWORDLONG  IOD_Alloc_Base; | 
 
 
 
 
 | 313 | DWORDLONG  IOD_Alloc_End; | 
 
 
 
 
 | 314 | DWORD  IOD_DesFlags; | 
 
 
 
 
 | 315 | } IO_DES, *PIO_DES; | 
 
 
 
 
 | 316 |  | 
 
 
 
 
 | 317 | /* IO_RANGE.IOR_Alias constants */ | 
 
 
 
 
 | 318 | #define IO_ALIAS_10_BIT_DECODE                          0x00000004 | 
 
 
 
 
 | 319 | #define IO_ALIAS_12_BIT_DECODE                          0x00000010 | 
 
 
 
 
 | 320 | #define IO_ALIAS_16_BIT_DECODE                          0x00000000 | 
 
 
 
 
 | 321 | #define IO_ALIAS_POSITIVE_DECODE                        0x000000FF | 
 
 
 
 
 | 322 |  | 
 
 
 
 
 | 323 | typedef struct IO_Range_s { | 
 
 
 
 
 | 324 | DWORDLONG  IOR_Align; | 
 
 
 
 
 | 325 | DWORD  IOR_nPorts; | 
 
 
 
 
 | 326 | DWORDLONG  IOR_Min; | 
 
 
 
 
 | 327 | DWORDLONG  IOR_Max; | 
 
 
 
 
 | 328 | DWORD  IOR_RangeFlags; | 
 
 
 
 
 | 329 | DWORDLONG  IOR_Alias; | 
 
 
 
 
 | 330 | } IO_RANGE, *PIO_RANGE; | 
 
 
 
 
 | 331 |  | 
 
 
 
 
 | 332 | #define IOType_Range sizeof(IO_RANGE) | 
 
 
 
 
 | 333 |  | 
 
 
 
 
 | 334 | typedef struct IO_Resource_s { | 
 
 
 
 
 | 335 | IO_DES  IO_Header; | 
 
 
 
 
 | 336 | IO_RANGE  IO_Data[ANYSIZE_ARRAY]; | 
 
 
 
 
 | 337 | } IO_RESOURCE, *PIO_RESOURCE; | 
 
 
 
 
 | 338 |  | 
 
 
 
 
 | 339 | /* IRQ_DES.IRQD_flags constants */ | 
 
 
 
 
 | 340 | #define mIRQD_Share                                                                     0x1 | 
 
 
 
 
 | 341 | #define fIRQD_Exclusive                                                                 0x0 | 
 
 
 
 
 | 342 | #define fIRQD_Share                                                                     0x1 | 
 
 
 
 
 | 343 |  | 
 
 
 
 
 | 344 | #define fIRQD_Share_Bit                                                                 0 | 
 
 
 
 
 | 345 | #define fIRQD_Level_Bit                                                           1 | 
 
 
 
 
 | 346 |  | 
 
 
 
 
 | 347 | #define mIRQD_Edge_Level                                                                0x2 | 
 
 
 
 
 | 348 | #define fIRQD_Level                                                                     0x0 | 
 
 
 
 
 | 349 | #define fIRQD_Edge                                                                      0x2 | 
 
 
 
 
 | 350 |  | 
 
 
 
 
 | 351 | typedef struct IRQ_Des_32_s { | 
 
 
 
 
 | 352 | DWORD  IRQD_Count; | 
 
 
 
 
 | 353 | DWORD  IRQD_Type; | 
 
 
 
 
 | 354 | DWORD  IRQD_Flags; | 
 
 
 
 
 | 355 | ULONG  IRQD_Alloc_Num; | 
 
 
 
 
 | 356 | ULONG32  IRQD_Affinity; | 
 
 
 
 
 | 357 | } IRQ_DES_32, *PIRQ_DES_32; | 
 
 
 
 
 | 358 |  | 
 
 
 
 
 | 359 | typedef struct IRQ_Des_64_s { | 
 
 
 
 
 | 360 | DWORD  IRQD_Count; | 
 
 
 
 
 | 361 | DWORD  IRQD_Type; | 
 
 
 
 
 | 362 | DWORD  IRQD_Flags; | 
 
 
 
 
 | 363 | ULONG  IRQD_Alloc_Num; | 
 
 
 
 
 | 364 | ULONG64  IRQD_Affinity; | 
 
 
 
 
 | 365 | } IRQ_DES_64, *PIRQ_DES_64; | 
 
 
 
 
 | 366 |  | 
 
 
 
 
 | 367 | #ifdef _WIN64 | 
 
 
 
 
 | 368 | typedef IRQ_DES_64 IRQ_DES; | 
 
 
 
 
 | 369 | typedef PIRQ_DES_64 PIRQ_DES; | 
 
 
 
 
 | 370 | #else | 
 
 
 
 
 | 371 | typedef IRQ_DES_32 IRQ_DES; | 
 
 
 
 
 | 372 | typedef PIRQ_DES_32 PIRQ_DES; | 
 
 
 
 
 | 373 | #endif | 
 
 
 
 
 | 374 |  | 
 
 
 
 
 | 375 | typedef struct IRQ_Range_s { | 
 
 
 
 
 | 376 | ULONG  IRQR_Min; | 
 
 
 
 
 | 377 | ULONG  IRQR_Max; | 
 
 
 
 
 | 378 | ULONG  IRQR_Flags; | 
 
 
 
 
 | 379 | } IRQ_RANGE, *PIRQ_RANGE; | 
 
 
 
 
 | 380 |  | 
 
 
 
 
 | 381 | #define IRQType_Range sizeof(IRQ_RANGE) | 
 
 
 
 
 | 382 |  | 
 
 
 
 
 | 383 | typedef struct IRQ_Resource_s { | 
 
 
 
 
 | 384 | IRQ_DES  IRQ_Header; | 
 
 
 
 
 | 385 | IRQ_RANGE  IRQ_Data[ANYSIZE_ARRAY]; | 
 
 
 
 
 | 386 | } IRQ_RESOURCE, *PIRQ_RESOURCE; | 
 
 
 
 
 | 387 |  | 
 
 
 
 
 | 388 | /* MEM_DES.MD_Flags constants */ | 
 
 
 
 
 | 389 | #define mMD_MemoryType              0x1 | 
 
 
 
 
 | 390 | #define fMD_MemoryType              mMD_MemoryType | 
 
 
 
 
 | 391 | #define fMD_ROM                     0x0 | 
 
 
 
 
 | 392 | #define fMD_RAM                     0x1 | 
 
 
 
 
 | 393 |  | 
 
 
 
 
 | 394 | #define mMD_32_24                   0x2 | 
 
 
 
 
 | 395 | #define fMD_32_24                   mMD_32_24 | 
 
 
 
 
 | 396 | #define fMD_24                      0x0 | 
 
 
 
 
 | 397 | #define fMD_32                      0x2 | 
 
 
 
 
 | 398 |  | 
 
 
 
 
 | 399 | #define mMD_Prefetchable            0x4 | 
 
 
 
 
 | 400 | #define fMD_Prefetchable            mMD_Prefetchable | 
 
 
 
 
 | 401 | #define fMD_Pref                    mMD_Prefetchable | 
 
 
 
 
 | 402 | #define fMD_PrefetchDisallowed      0x0 | 
 
 
 
 
 | 403 | #define fMD_PrefetchAllowed         0x4 | 
 
 
 
 
 | 404 |  | 
 
 
 
 
 | 405 | #define mMD_Readable                0x8 | 
 
 
 
 
 | 406 | #define fMD_Readable                mMD_Readable | 
 
 
 
 
 | 407 | #define fMD_ReadAllowed             0x0 | 
 
 
 
 
 | 408 | #define fMD_ReadDisallowed          0x8 | 
 
 
 
 
 | 409 |  | 
 
 
 
 
 | 410 | #define mMD_CombinedWrite           0x10 | 
 
 
 
 
 | 411 | #define fMD_CombinedWrite           mMD_CombinedWrite | 
 
 
 
 
 | 412 | #define fMD_CombinedWriteDisallowed 0x0 | 
 
 
 
 
 | 413 | #define fMD_CombinedWriteAllowed    0x10 | 
 
 
 
 
 | 414 |  | 
 
 
 
 
 | 415 | #define mMD_Cacheable               0x20 | 
 
 
 
 
 | 416 | #define fMD_NonCacheable            0x0 | 
 
 
 
 
 | 417 | #define fMD_Cacheable               0x20 | 
 
 
 
 
 | 418 |  | 
 
 
 
 
 | 419 | typedef struct Mem_Des_s { | 
 
 
 
 
 | 420 | DWORD  MD_Count; | 
 
 
 
 
 | 421 | DWORD  MD_Type; | 
 
 
 
 
 | 422 | DWORDLONG  MD_Alloc_Base; | 
 
 
 
 
 | 423 | DWORDLONG  MD_Alloc_End; | 
 
 
 
 
 | 424 | DWORD  MD_Flags; | 
 
 
 
 
 | 425 | DWORD  MD_Reserved; | 
 
 
 
 
 | 426 | } MEM_DES, *PMEM_DES; | 
 
 
 
 
 | 427 |  | 
 
 
 
 
 | 428 | typedef struct Mem_Range_s { | 
 
 
 
 
 | 429 | DWORDLONG  MR_Align; | 
 
 
 
 
 | 430 | ULONG  MR_nBytes; | 
 
 
 
 
 | 431 | DWORDLONG  MR_Min; | 
 
 
 
 
 | 432 | DWORDLONG  MR_Max; | 
 
 
 
 
 | 433 | DWORD  MR_Flags; | 
 
 
 
 
 | 434 | DWORD  MR_Reserved; | 
 
 
 
 
 | 435 | } MEM_RANGE, *PMEM_RANGE; | 
 
 
 
 
 | 436 |  | 
 
 
 
 
 | 437 | #define MType_Range sizeof(MEM_RANGE) | 
 
 
 
 
 | 438 |  | 
 
 
 
 
 | 439 | typedef struct Mem_Resource_s { | 
 
 
 
 
 | 440 | MEM_DES  MEM_Header; | 
 
 
 
 
 | 441 | MEM_RANGE  MEM_Data[ANYSIZE_ARRAY]; | 
 
 
 
 
 | 442 | } MEM_RESOURCE, *PMEM_RESOURCE; | 
 
 
 
 
 | 443 |  | 
 
 
 
 
 | 444 | /* MFCARD_DES.PMF_Flags constants */ | 
 
 
 
 
 | 445 | #define fPMF_AUDIO_ENABLE                                                       0x8 | 
 
 
 
 
 | 446 | #define mPMF_AUDIO_ENABLE                                                       fPMF_AUDIO_ENABLE | 
 
 
 
 
 | 447 |  | 
 
 
 
 
 | 448 | typedef struct MfCard_Des_s { | 
 
 
 
 
 | 449 | DWORD  PMF_Count; | 
 
 
 
 
 | 450 | DWORD  PMF_Type; | 
 
 
 
 
 | 451 | DWORD  PMF_Flags; | 
 
 
 
 
 | 452 | BYTE  PMF_ConfigOptions; | 
 
 
 
 
 | 453 | BYTE  PMF_IoResourceIndex; | 
 
 
 
 
 | 454 | BYTE  PMF_Reserved[2]; | 
 
 
 
 
 | 455 | DWORD  PMF_ConfigRegisterBase; | 
 
 
 
 
 | 456 | } MFCARD_DES, *PMFCARD_DES; | 
 
 
 
 
 | 457 |  | 
 
 
 
 
 | 458 | typedef struct MfCard_Resource_s { | 
 
 
 
 
 | 459 | MFCARD_DES  MfCard_Header; | 
 
 
 
 
 | 460 | } MFCARD_RESOURCE, *PMFCARD_RESOURCE; | 
 
 
 
 
 | 461 |  | 
 
 
 
 
 | 462 | /* PCCARD_DES.PCD_Flags constants */ | 
 
 
 
 
 | 463 |  | 
 
 
 
 
 | 464 | typedef struct PcCard_Des_s { | 
 
 
 
 
 | 465 | DWORD  PCD_Count; | 
 
 
 
 
 | 466 | DWORD  PCD_Type; | 
 
 
 
 
 | 467 | DWORD  PCD_Flags; | 
 
 
 
 
 | 468 | BYTE  PCD_ConfigIndex; | 
 
 
 
 
 | 469 | BYTE  PCD_Reserved[3]; | 
 
 
 
 
 | 470 | DWORD  PCD_MemoryCardBase1; | 
 
 
 
 
 | 471 | DWORD  PCD_MemoryCardBase2; | 
 
 
 
 
 | 472 | } PCCARD_DES, *PPCCARD_DES; | 
 
 
 
 
 | 473 |  | 
 
 
 
 
 | 474 | #define mPCD_IO_8_16                                                            0x1 | 
 
 
 
 
 | 475 | #define fPCD_IO_8                                                               0x0 | 
 
 
 
 
 | 476 | #define fPCD_IO_16                                                              0x1 | 
 
 
 
 
 | 477 | #define mPCD_MEM_8_16                                                           0x2 | 
 
 
 
 
 | 478 | #define fPCD_MEM_8                                                              0x0 | 
 
 
 
 
 | 479 | #define fPCD_MEM_16                                                             0x2 | 
 
 
 
 
 | 480 | #define mPCD_MEM_A_C                                                            0xC | 
 
 
 
 
 | 481 | #define fPCD_MEM1_A                                                             0x4 | 
 
 
 
 
 | 482 | #define fPCD_MEM2_A                                                             0x8 | 
 
 
 
 
 | 483 | #define fPCD_IO_ZW_8                                                            0x10 | 
 
 
 
 
 | 484 | #define fPCD_IO_SRC_16                                                          0x20 | 
 
 
 
 
 | 485 | #define fPCD_IO_WS_16                                                           0x40 | 
 
 
 
 
 | 486 | #define mPCD_MEM_WS                                                             0x300 | 
 
 
 
 
 | 487 | #define fPCD_MEM_WS_ONE                                                         0x100 | 
 
 
 
 
 | 488 | #define fPCD_MEM_WS_TWO                                                         0x200 | 
 
 
 
 
 | 489 | #define fPCD_MEM_WS_THREE                                                       0x300 | 
 
 
 
 
 | 490 |  | 
 
 
 
 
 | 491 | #define fPCD_MEM_A                                                              0x4 | 
 
 
 
 
 | 492 |  | 
 
 
 
 
 | 493 | #define fPCD_ATTRIBUTES_PER_WINDOW                              0x8000 | 
 
 
 
 
 | 494 |  | 
 
 
 
 
 | 495 | #define fPCD_IO1_16                                                             0x00010000 | 
 
 
 
 
 | 496 | #define fPCD_IO1_ZW_8                                                           0x00020000 | 
 
 
 
 
 | 497 | #define fPCD_IO1_SRC_16                                                         0x00040000 | 
 
 
 
 
 | 498 | #define fPCD_IO1_WS_16                                                          0x00080000 | 
 
 
 
 
 | 499 |  | 
 
 
 
 
 | 500 | #define fPCD_IO2_16                                                             0x00100000 | 
 
 
 
 
 | 501 | #define fPCD_IO2_ZW_8                                                           0x00200000 | 
 
 
 
 
 | 502 | #define fPCD_IO2_SRC_16                                                         0x00400000 | 
 
 
 
 
 | 503 | #define fPCD_IO2_WS_16                                                          0x00800000 | 
 
 
 
 
 | 504 |  | 
 
 
 
 
 | 505 | #define mPCD_MEM1_WS                                                            0x03000000 | 
 
 
 
 
 | 506 | #define fPCD_MEM1_WS_ONE                                                        0x01000000 | 
 
 
 
 
 | 507 | #define fPCD_MEM1_WS_TWO                                                        0x02000000 | 
 
 
 
 
 | 508 | #define fPCD_MEM1_WS_THREE                                                      0x03000000 | 
 
 
 
 
 | 509 | #define fPCD_MEM1_16                                                            0x04000000 | 
 
 
 
 
 | 510 |  | 
 
 
 
 
 | 511 | #define mPCD_MEM2_WS                                                            0x30000000 | 
 
 
 
 
 | 512 | #define fPCD_MEM2_WS_ONE                                                        0x10000000 | 
 
 
 
 
 | 513 | #define fPCD_MEM2_WS_TWO                                                        0x20000000 | 
 
 
 
 
 | 514 | #define fPCD_MEM2_WS_THREE                                                      0x30000000 | 
 
 
 
 
 | 515 | #define fPCD_MEM2_16                                                            0x40000000 | 
 
 
 
 
 | 516 |  | 
 
 
 
 
 | 517 | #define PCD_MAX_MEMORY                                                                          2 | 
 
 
 
 
 | 518 | #define PCD_MAX_IO                                                                              2 | 
 
 
 
 
 | 519 |  | 
 
 
 
 
 | 520 | typedef struct PcCard_Resource_s { | 
 
 
 
 
 | 521 | PCCARD_DES  PcCard_Header; | 
 
 
 
 
 | 522 | } PCCARD_RESOURCE, *PPCCARD_RESOURCE; | 
 
 
 
 
 | 523 |  | 
 
 
 
 
 | 524 |  | 
 
 
 
 
 | 525 | /* CONFLICT_DETAILS.CD.ulMask constants */ | 
 
 
 
 
 | 526 | #define CM_CDMASK_DEVINST                                               0x00000001 | 
 
 
 
 
 | 527 | #define CM_CDMASK_RESDES                                                0x00000002 | 
 
 
 
 
 | 528 | #define CM_CDMASK_FLAGS                                                 0x00000004 | 
 
 
 
 
 | 529 | #define CM_CDMASK_DESCRIPTION                                           0x00000008 | 
 
 
 
 
 | 530 | #define CM_CDMASK_VALID                                           0x0000000F | 
 
 
 
 
 | 531 |  | 
 
 
 
 
 | 532 | /* CONFLICT_DETAILS.CD.ulFlags constants */ | 
 
 
 
 
 | 533 | #define CM_CDFLAGS_DRIVER                                               0x00000001 | 
 
 
 
 
 | 534 | #define CM_CDFLAGS_ROOT_OWNED                                           0x00000002 | 
 
 
 
 
 | 535 | #define CM_CDFLAGS_RESERVED                                             0x00000004 | 
 
 
 
 
 | 536 |  | 
 
 
 
 
 | 537 | typedef struct _CONFLICT_DETAILS_A { | 
 
 
 
 
 | 538 | ULONG  CD_ulSize; | 
 
 
 
 
 | 539 | ULONG  CD_ulMask; | 
 
 
 
 
 | 540 | DEVINST  CD_dnDevInst; | 
 
 
 
 
 | 541 | RES_DES  CD_rdResDes; | 
 
 
 
 
 | 542 | ULONG  CD_ulFlags; | 
 
 
 
 
 | 543 | CHAR  CD_szDescription[MAX_PATH]; | 
 
 
 
 
 | 544 | } CONFLICT_DETAILS_A , *PCONFLICT_DETAILS_A; | 
 
 
 
 
 | 545 |  | 
 
 
 
 
 | 546 | typedef struct _CONFLICT_DETAILS_W { | 
 
 
 
 
 | 547 | ULONG  CD_ulSize; | 
 
 
 
 
 | 548 | ULONG  CD_ulMask; | 
 
 
 
 
 | 549 | DEVINST  CD_dnDevInst; | 
 
 
 
 
 | 550 | RES_DES  CD_rdResDes; | 
 
 
 
 
 | 551 | ULONG  CD_ulFlags; | 
 
 
 
 
 | 552 | WCHAR  CD_szDescription[MAX_PATH]; | 
 
 
 
 
 | 553 | } CONFLICT_DETAILS_W , *PCONFLICT_DETAILS_W; | 
 
 
 
 
 | 554 |  | 
 
 
 
 
 | 555 | #ifdef UNICODE | 
 
 
 
 
 | 556 | typedef CONFLICT_DETAILS_W CONFLICT_DETAILS; | 
 
 
 
 
 | 557 | typedef PCONFLICT_DETAILS_W PCONFLICT_DETAILS; | 
 
 
 
 
 | 558 | #else | 
 
 
 
 
 | 559 | typedef CONFLICT_DETAILS_A CONFLICT_DETAILS; | 
 
 
 
 
 | 560 | typedef PCONFLICT_DETAILS_A PCONFLICT_DETAILS; | 
 
 
 
 
 | 561 | #endif | 
 
 
 
 
 | 562 |  | 
 
 
 
 
 | 563 |  | 
 
 
 
 
 | 564 |  | 
 
 
 
 
 | 565 | /* CM_Add_Empty_Log_Conf.ulFlags constants */ | 
 
 
 
 
 | 566 | #define PRIORITY_EQUAL_FIRST                                            0x00000008 | 
 
 
 
 
 | 567 | #define PRIORITY_EQUAL_LAST                                             0x00000000 | 
 
 
 
 
 | 568 | #define PRIORITY_BIT                                                    0x00000008 | 
 
 
 
 
 | 569 |  | 
 
 
 
 
 | 570 | CMAPI | 
 
 
 
 
 | 571 | CONFIGRET | 
 
 
 
 
 | 572 | WINAPI | 
 
 
 
 
 | 573 | CM_Add_Empty_Log_Conf( | 
 
 
 
 
 | 574 | /*OUT*/ PLOG_CONF  plcLogConf, | 
 
 
 
 
 | 575 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 576 | /*IN*/ PRIORITY  Priority, | 
 
 
 
 
 | 577 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 578 |  | 
 
 
 
 
 | 579 | CMAPI | 
 
 
 
 
 | 580 | CONFIGRET | 
 
 
 
 
 | 581 | WINAPI | 
 
 
 
 
 | 582 | CM_Add_Empty_Log_Conf_Ex( | 
 
 
 
 
 | 583 | /*OUT*/ PLOG_CONF  plcLogConf, | 
 
 
 
 
 | 584 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 585 | /*IN*/ PRIORITY  Priority, | 
 
 
 
 
 | 586 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 587 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 588 |  | 
 
 
 
 
 | 589 | /* CM_Add_ID.ulFlags constants */ | 
 
 
 
 
 | 590 | #define CM_ADD_ID_HARDWARE                      0x00000000 | 
 
 
 
 
 | 591 | #define CM_ADD_ID_COMPATIBLE              0x00000001 | 
 
 
 
 
 | 592 | #define CM_ADD_ID_BITS                    0x00000001 | 
 
 
 
 
 | 593 |  | 
 
 
 
 
 | 594 | CMAPI | 
 
 
 
 
 | 595 | CONFIGRET | 
 
 
 
 
 | 596 | WINAPI | 
 
 
 
 
 | 597 | CM_Add_IDA( | 
 
 
 
 
 | 598 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 599 | /*IN*/ PSTR  pszID, | 
 
 
 
 
 | 600 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 601 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 602 |  | 
 
 
 
 
 | 603 | CMAPI | 
 
 
 
 
 | 604 | CONFIGRET | 
 
 
 
 
 | 605 | WINAPI | 
 
 
 
 
 | 606 | CM_Add_ID_ExA( | 
 
 
 
 
 | 607 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 608 | /*IN*/ PSTR  pszID, | 
 
 
 
 
 | 609 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 610 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 611 |  | 
 
 
 
 
 | 612 | CMAPI | 
 
 
 
 
 | 613 | CONFIGRET | 
 
 
 
 
 | 614 | WINAPI | 
 
 
 
 
 | 615 | CM_Add_ID_ExW( | 
 
 
 
 
 | 616 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 617 | /*IN*/ PWSTR  pszID, | 
 
 
 
 
 | 618 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 619 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 620 |  | 
 
 
 
 
 | 621 | CMAPI | 
 
 
 
 
 | 622 | CONFIGRET | 
 
 
 
 
 | 623 | WINAPI | 
 
 
 
 
 | 624 | CM_Add_IDW( | 
 
 
 
 
 | 625 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 626 | /*IN*/ PWSTR  pszID, | 
 
 
 
 
 | 627 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 628 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 629 |  | 
 
 
 
 
 | 630 | #ifdef UNICODE | 
 
 
 
 
 | 631 | #define CM_Add_ID CM_Add_IDW | 
 
 
 
 
 | 632 | #define CM_Add_ID_Ex CM_Add_ID_ExW | 
 
 
 
 
 | 633 | #else | 
 
 
 
 
 | 634 | #define CM_Add_ID CM_Add_IDA | 
 
 
 
 
 | 635 | #define CM_Add_ID_Ex CM_Add_ID_ExA | 
 
 
 
 
 | 636 | #endif /* UNICODE */ | 
 
 
 
 
 | 637 |  | 
 
 
 
 
 | 638 | /* FIXME: Obsolete CM_Add_Range */ | 
 
 
 
 
 | 639 |  | 
 
 
 
 
 | 640 | CMAPI | 
 
 
 
 
 | 641 | CONFIGRET | 
 
 
 
 
 | 642 | WINAPI | 
 
 
 
 
 | 643 | CM_Add_Res_Des( | 
 
 
 
 
 | 644 | /*OUT*/ PRES_DES  prdResDes, | 
 
 
 
 
 | 645 | /*IN*/ LOG_CONF  lcLogConf, | 
 
 
 
 
 | 646 | /*IN*/ RESOURCEID  ResourceID, | 
 
 
 
 
 | 647 | /*IN*/ PCVOID  ResourceData, | 
 
 
 
 
 | 648 | /*IN*/ ULONG  ResourceLen, | 
 
 
 
 
 | 649 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 650 |  | 
 
 
 
 
 | 651 | CMAPI | 
 
 
 
 
 | 652 | CONFIGRET | 
 
 
 
 
 | 653 | WINAPI | 
 
 
 
 
 | 654 | CM_Add_Res_Des_Ex( | 
 
 
 
 
 | 655 | /*OUT*/ PRES_DES  prdResDes, | 
 
 
 
 
 | 656 | /*IN*/ LOG_CONF  lcLogConf, | 
 
 
 
 
 | 657 | /*IN*/ RESOURCEID  ResourceID, | 
 
 
 
 
 | 658 | /*IN*/ PCVOID  ResourceData, | 
 
 
 
 
 | 659 | /*IN*/ ULONG  ResourceLen, | 
 
 
 
 
 | 660 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 661 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 662 |  | 
 
 
 
 
 | 663 | CMAPI | 
 
 
 
 
 | 664 | CONFIGRET | 
 
 
 
 
 | 665 | WINAPI | 
 
 
 
 
 | 666 | CM_Connect_MachineA( | 
 
 
 
 
 | 667 | /*IN*/ PCSTR  UNCServerName, | 
 
 
 
 
 | 668 | /*OUT*/ PHMACHINE  phMachine); | 
 
 
 
 
 | 669 |  | 
 
 
 
 
 | 670 | CMAPI | 
 
 
 
 
 | 671 | CONFIGRET | 
 
 
 
 
 | 672 | WINAPI | 
 
 
 
 
 | 673 | CM_Connect_MachineW( | 
 
 
 
 
 | 674 | /*IN*/ PCWSTR  UNCServerName, | 
 
 
 
 
 | 675 | /*OUT*/ PHMACHINE  phMachine); | 
 
 
 
 
 | 676 |  | 
 
 
 
 
 | 677 | #ifdef UNICODE | 
 
 
 
 
 | 678 | #define CM_Connect_Machine CM_Connect_MachineW | 
 
 
 
 
 | 679 | #else | 
 
 
 
 
 | 680 | #define CM_Connect_Machine CM_Connect_MachineA | 
 
 
 
 
 | 681 | #endif /* UNICODE */ | 
 
 
 
 
 | 682 |  | 
 
 
 
 
 | 683 | /* FIXME: Obsolete CM_Create_DevNode */ | 
 
 
 
 
 | 684 | /* FIXME: Obsolete CM_Create_DevNodeEx */ | 
 
 
 
 
 | 685 | /* FIXME: Obsolete CM_Create_Range_List */ | 
 
 
 
 
 | 686 | /* FIXME: Obsolete CM_Delete_Class_Key */ | 
 
 
 
 
 | 687 | /* FIXME: Obsolete CM_Delete_Class_Key_Ex */ | 
 
 
 
 
 | 688 | /* FIXME: Obsolete CM_Delete_DevNode_Key */ | 
 
 
 
 
 | 689 | /* FIXME: Obsolete CM_Delete_DevNode_Key_Ex */ | 
 
 
 
 
 | 690 | /* FIXME: Obsolete CM_Delete_Range */ | 
 
 
 
 
 | 691 | /* FIXME: Obsolete CM_Detected_Resource_Conflict */ | 
 
 
 
 
 | 692 | /* FIXME: Obsolete CM_Detected_Resource_Conflict_Ex */ | 
 
 
 
 
 | 693 | /* FIXME: Obsolete CM_Disable_DevNode */ | 
 
 
 
 
 | 694 | /* FIXME: Obsolete CM_Disable_DevNodeEx */ | 
 
 
 
 
 | 695 |  | 
 
 
 
 
 | 696 | CMAPI | 
 
 
 
 
 | 697 | CONFIGRET | 
 
 
 
 
 | 698 | WINAPI | 
 
 
 
 
 | 699 | CM_Disconnect_Machine( | 
 
 
 
 
 | 700 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 701 |  | 
 
 
 
 
 | 702 | /* FIXME: Obsolete CM_Enable_DevNode */ | 
 
 
 
 
 | 703 | /* FIXME: Obsolete CM_Enable_DevNodeEx */ | 
 
 
 
 
 | 704 |  | 
 
 
 
 
 | 705 | CMAPI | 
 
 
 
 
 | 706 | CONFIGRET | 
 
 
 
 
 | 707 | WINAPI | 
 
 
 
 
 | 708 | CM_Enumerate_Classes( | 
 
 
 
 
 | 709 | /*IN*/ ULONG  ulClassIndex, | 
 
 
 
 
 | 710 | /*OUT*/ LPGUID  ClassGuid, | 
 
 
 
 
 | 711 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 712 |  | 
 
 
 
 
 | 713 | CMAPI | 
 
 
 
 
 | 714 | CONFIGRET | 
 
 
 
 
 | 715 | WINAPI | 
 
 
 
 
 | 716 | CM_Enumerate_Classes_Ex( | 
 
 
 
 
 | 717 | /*IN*/ ULONG  ulClassIndex, | 
 
 
 
 
 | 718 | /*OUT*/ LPGUID  ClassGuid, | 
 
 
 
 
 | 719 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 720 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 721 |  | 
 
 
 
 
 | 722 | CMAPI | 
 
 
 
 
 | 723 | CONFIGRET | 
 
 
 
 
 | 724 | WINAPI | 
 
 
 
 
 | 725 | CM_Enumerate_EnumeratorsA( | 
 
 
 
 
 | 726 | /*IN*/ ULONG  ulEnumIndex, | 
 
 
 
 
 | 727 | /*OUT*/ PCHAR  Buffer, | 
 
 
 
 
 | 728 | /*IN OUT*/ PULONG  pulLength, | 
 
 
 
 
 | 729 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 730 |  | 
 
 
 
 
 | 731 | CMAPI | 
 
 
 
 
 | 732 | CONFIGRET | 
 
 
 
 
 | 733 | WINAPI | 
 
 
 
 
 | 734 | CM_Enumerate_Enumerators_ExA( | 
 
 
 
 
 | 735 | /*IN*/ ULONG  ulEnumIndex, | 
 
 
 
 
 | 736 | /*OUT*/ PCHAR  Buffer, | 
 
 
 
 
 | 737 | /*IN OUT*/ PULONG  pulLength, | 
 
 
 
 
 | 738 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 739 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 740 |  | 
 
 
 
 
 | 741 | CMAPI | 
 
 
 
 
 | 742 | CONFIGRET | 
 
 
 
 
 | 743 | WINAPI | 
 
 
 
 
 | 744 | CM_Enumerate_Enumerators_ExW( | 
 
 
 
 
 | 745 | /*IN*/ ULONG  ulEnumIndex, | 
 
 
 
 
 | 746 | /*OUT*/ PWCHAR  Buffer, | 
 
 
 
 
 | 747 | /*IN OUT*/ PULONG  pulLength, | 
 
 
 
 
 | 748 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 749 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 750 |  | 
 
 
 
 
 | 751 | CMAPI | 
 
 
 
 
 | 752 | CONFIGRET | 
 
 
 
 
 | 753 | WINAPI | 
 
 
 
 
 | 754 | CM_Enumerate_EnumeratorsW( | 
 
 
 
 
 | 755 | /*IN*/ ULONG  ulEnumIndex, | 
 
 
 
 
 | 756 | /*OUT*/ PWCHAR  Buffer, | 
 
 
 
 
 | 757 | /*IN OUT*/ PULONG  pulLength, | 
 
 
 
 
 | 758 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 759 |  | 
 
 
 
 
 | 760 | #ifdef UNICODE | 
 
 
 
 
 | 761 | #define CM_Enumerate_Enumerators CM_Enumerate_EnumeratorsW | 
 
 
 
 
 | 762 | #define CM_Enumerate_Enumerators_Ex CM_Enumerate_Enumerators_ExW | 
 
 
 
 
 | 763 | #else | 
 
 
 
 
 | 764 | #define CM_Enumerate_Enumerators CM_Enumerate_EnumeratorsA | 
 
 
 
 
 | 765 | #define CM_Enumerate_Enumerators_Ex CM_Enumerate_Enumerators_ExW | 
 
 
 
 
 | 766 | #endif /* UNICODE */ | 
 
 
 
 
 | 767 |  | 
 
 
 
 
 | 768 | /* FIXME: Obsolete CM_Find_Range */ | 
 
 
 
 
 | 769 | /* FIXME: Obsolete CM_First_Range */ | 
 
 
 
 
 | 770 |  | 
 
 
 
 
 | 771 | CMAPI | 
 
 
 
 
 | 772 | CONFIGRET | 
 
 
 
 
 | 773 | WINAPI | 
 
 
 
 
 | 774 | CM_Free_Log_Conf( | 
 
 
 
 
 | 775 | /*IN*/ LOG_CONF  lcLogConfToBeFreed, | 
 
 
 
 
 | 776 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 777 |  | 
 
 
 
 
 | 778 | CMAPI | 
 
 
 
 
 | 779 | CONFIGRET | 
 
 
 
 
 | 780 | WINAPI | 
 
 
 
 
 | 781 | CM_Free_Log_Conf_Ex( | 
 
 
 
 
 | 782 | /*IN*/ LOG_CONF  lcLogConfToBeFreed, | 
 
 
 
 
 | 783 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 784 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 785 |  | 
 
 
 
 
 | 786 | CMAPI | 
 
 
 
 
 | 787 | CONFIGRET | 
 
 
 
 
 | 788 | WINAPI | 
 
 
 
 
 | 789 | CM_Free_Log_Conf_Handle( | 
 
 
 
 
 | 790 | /*IN*/ LOG_CONF  lcLogConf); | 
 
 
 
 
 | 791 |  | 
 
 
 
 
 | 792 | /* FIXME: Obsolete CM_Free_Range_List */ | 
 
 
 
 
 | 793 |  | 
 
 
 
 
 | 794 | CMAPI | 
 
 
 
 
 | 795 | CONFIGRET | 
 
 
 
 
 | 796 | WINAPI | 
 
 
 
 
 | 797 | CM_Free_Res_Des( | 
 
 
 
 
 | 798 | /*OUT*/ PRES_DES  prdResDes, | 
 
 
 
 
 | 799 | /*IN*/ RES_DES  rdResDes, | 
 
 
 
 
 | 800 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 801 |  | 
 
 
 
 
 | 802 | CMAPI | 
 
 
 
 
 | 803 | CONFIGRET | 
 
 
 
 
 | 804 | WINAPI | 
 
 
 
 
 | 805 | CM_Free_Res_Des_Ex( | 
 
 
 
 
 | 806 | /*OUT*/ PRES_DES  prdResDes, | 
 
 
 
 
 | 807 | /*IN*/ RES_DES  rdResDes, | 
 
 
 
 
 | 808 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 809 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 810 |  | 
 
 
 
 
 | 811 | CMAPI | 
 
 
 
 
 | 812 | CONFIGRET | 
 
 
 
 
 | 813 | WINAPI | 
 
 
 
 
 | 814 | CM_Free_Res_Des_Handle( | 
 
 
 
 
 | 815 | /*IN*/ RES_DES  rdResDes); | 
 
 
 
 
 | 816 |  | 
 
 
 
 
 | 817 | CMAPI | 
 
 
 
 
 | 818 | CONFIGRET | 
 
 
 
 
 | 819 | WINAPI | 
 
 
 
 
 | 820 | CM_Free_Resource_Conflict_Handle( | 
 
 
 
 
 | 821 | /*IN*/ CONFLICT_LIST  clConflictList); | 
 
 
 
 
 | 822 |  | 
 
 
 
 
 | 823 | CMAPI | 
 
 
 
 
 | 824 | CONFIGRET | 
 
 
 
 
 | 825 | WINAPI | 
 
 
 
 
 | 826 | CM_Get_Child( | 
 
 
 
 
 | 827 | /*OUT*/ PDEVINST  pdnDevInst, | 
 
 
 
 
 | 828 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 829 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 830 |  | 
 
 
 
 
 | 831 | CMAPI | 
 
 
 
 
 | 832 | CONFIGRET | 
 
 
 
 
 | 833 | WINAPI | 
 
 
 
 
 | 834 | CM_Get_Child_Ex( | 
 
 
 
 
 | 835 | /*OUT*/ PDEVINST  pdnDevInst, | 
 
 
 
 
 | 836 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 837 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 838 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 839 |  | 
 
 
 
 
 | 840 | /* FIXME: Obsolete CM_Get_Class_Name */ | 
 
 
 
 
 | 841 | /* FIXME: Obsolete CM_Get_Class_Name_Ex */ | 
 
 
 
 
 | 842 | /* FIXME: Obsolete CM_Get_Class_Key_Name */ | 
 
 
 
 
 | 843 | /* FIXME: Obsolete CM_Get_Class_Key_Name_Ex */ | 
 
 
 
 
 | 844 | /* FIXME: Obsolete CM_Get_Class_Registry_Property */ | 
 
 
 
 
 | 845 |  | 
 
 
 
 
 | 846 | CMAPI | 
 
 
 
 
 | 847 | CONFIGRET | 
 
 
 
 
 | 848 | WINAPI | 
 
 
 
 
 | 849 | CM_Get_Depth( | 
 
 
 
 
 | 850 | /*OUT*/ PULONG  pulDepth, | 
 
 
 
 
 | 851 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 852 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 853 |  | 
 
 
 
 
 | 854 | CMAPI | 
 
 
 
 
 | 855 | CONFIGRET | 
 
 
 
 
 | 856 | WINAPI | 
 
 
 
 
 | 857 | CM_Get_Depth_Ex( | 
 
 
 
 
 | 858 | /*OUT*/ PULONG  pulDepth, | 
 
 
 
 
 | 859 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 860 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 861 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 862 |  | 
 
 
 
 
 | 863 | CMAPI | 
 
 
 
 
 | 864 | CONFIGRET | 
 
 
 
 
 | 865 | WINAPI | 
 
 
 
 
 | 866 | CM_Get_Device_IDA( | 
 
 
 
 
 | 867 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 868 | /*OUT*/ PCHAR  Buffer, | 
 
 
 
 
 | 869 | /*IN*/ ULONG  BufferLen, | 
 
 
 
 
 | 870 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 871 |  | 
 
 
 
 
 | 872 | CMAPI | 
 
 
 
 
 | 873 | CONFIGRET | 
 
 
 
 
 | 874 | WINAPI | 
 
 
 
 
 | 875 | CM_Get_Device_ID_ExA( | 
 
 
 
 
 | 876 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 877 | /*OUT*/ PCHAR  Buffer, | 
 
 
 
 
 | 878 | /*IN*/ ULONG  BufferLen, | 
 
 
 
 
 | 879 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 880 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 881 |  | 
 
 
 
 
 | 882 | CMAPI | 
 
 
 
 
 | 883 | CONFIGRET | 
 
 
 
 
 | 884 | WINAPI | 
 
 
 
 
 | 885 | CM_Get_Device_ID_ExW( | 
 
 
 
 
 | 886 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 887 | /*OUT*/ PWCHAR  Buffer, | 
 
 
 
 
 | 888 | /*IN*/ ULONG  BufferLen, | 
 
 
 
 
 | 889 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 890 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 891 |  | 
 
 
 
 
 | 892 | CMAPI | 
 
 
 
 
 | 893 | CONFIGRET | 
 
 
 
 
 | 894 | WINAPI | 
 
 
 
 
 | 895 | CM_Get_Device_IDW( | 
 
 
 
 
 | 896 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 897 | /*OUT*/ PWCHAR  Buffer, | 
 
 
 
 
 | 898 | /*IN*/ ULONG  BufferLen, | 
 
 
 
 
 | 899 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 900 |  | 
 
 
 
 
 | 901 | #ifdef UNICODE | 
 
 
 
 
 | 902 | #define CM_Get_Device_ID CM_Get_Device_IDW | 
 
 
 
 
 | 903 | #define CM_Get_Device_ID_Ex CM_Get_Device_ID_ExW | 
 
 
 
 
 | 904 | #else | 
 
 
 
 
 | 905 | #define CM_Get_Device_ID CM_Get_Device_IDA | 
 
 
 
 
 | 906 | #define CM_Get_Device_ID_Ex CM_Get_Device_ID_ExW | 
 
 
 
 
 | 907 | #endif /* UNICODE */ | 
 
 
 
 
 | 908 |  | 
 
 
 
 
 | 909 | CMAPI | 
 
 
 
 
 | 910 | CONFIGRET | 
 
 
 
 
 | 911 | WINAPI | 
 
 
 
 
 | 912 | CM_Get_Device_ID_ListA( | 
 
 
 
 
 | 913 | /*IN*/ PCSTR  pszFilter, /*OPTIONAL*/ | 
 
 
 
 
 | 914 | /*OUT*/ PCHAR  Buffer, | 
 
 
 
 
 | 915 | /*IN*/ ULONG  BufferLen, | 
 
 
 
 
 | 916 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 917 |  | 
 
 
 
 
 | 918 | CMAPI | 
 
 
 
 
 | 919 | CONFIGRET | 
 
 
 
 
 | 920 | WINAPI | 
 
 
 
 
 | 921 | CM_Get_Device_ID_List_ExA( | 
 
 
 
 
 | 922 | /*IN*/ PCSTR  pszFilter, /*OPTIONAL*/ | 
 
 
 
 
 | 923 | /*OUT*/ PCHAR  Buffer, | 
 
 
 
 
 | 924 | /*IN*/ ULONG  BufferLen, | 
 
 
 
 
 | 925 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 926 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 927 |  | 
 
 
 
 
 | 928 | CMAPI | 
 
 
 
 
 | 929 | CONFIGRET | 
 
 
 
 
 | 930 | WINAPI | 
 
 
 
 
 | 931 | CM_Get_Device_ID_List_ExW( | 
 
 
 
 
 | 932 | /*IN*/ PCWSTR  pszFilter, /*OPTIONAL*/ | 
 
 
 
 
 | 933 | /*OUT*/ PWCHAR  Buffer, | 
 
 
 
 
 | 934 | /*IN*/ ULONG  BufferLen, | 
 
 
 
 
 | 935 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 936 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 937 |  | 
 
 
 
 
 | 938 | CMAPI | 
 
 
 
 
 | 939 | CONFIGRET | 
 
 
 
 
 | 940 | WINAPI | 
 
 
 
 
 | 941 | CM_Get_Device_ID_ListW( | 
 
 
 
 
 | 942 | /*IN*/ PCWSTR  pszFilter, /*OPTIONAL*/ | 
 
 
 
 
 | 943 | /*OUT*/ PWCHAR  Buffer, | 
 
 
 
 
 | 944 | /*IN*/ ULONG  BufferLen, | 
 
 
 
 
 | 945 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 946 |  | 
 
 
 
 
 | 947 | #ifdef UNICODE | 
 
 
 
 
 | 948 | #define CM_Get_Device_ID_List CM_Get_Device_ID_ListW | 
 
 
 
 
 | 949 | #define CM_Get_Device_ID_List_Ex CM_Get_Device_ID_List_ExW | 
 
 
 
 
 | 950 | #else | 
 
 
 
 
 | 951 | #define CM_Get_Device_ID_List CM_Get_Device_ID_ListA | 
 
 
 
 
 | 952 | #define CM_Get_Device_ID_List_Ex CM_Get_Device_ID_List_ExA | 
 
 
 
 
 | 953 | #endif /* UNICODE */ | 
 
 
 
 
 | 954 |  | 
 
 
 
 
 | 955 | CMAPI | 
 
 
 
 
 | 956 | CONFIGRET | 
 
 
 
 
 | 957 | WINAPI | 
 
 
 
 
 | 958 | CM_Get_Device_ID_List_SizeA( | 
 
 
 
 
 | 959 | /*OUT*/ PULONG  pulLen, | 
 
 
 
 
 | 960 | /*IN*/ PCSTR  pszFilter, /*OPTIONAL*/ | 
 
 
 
 
 | 961 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 962 |  | 
 
 
 
 
 | 963 | CMAPI | 
 
 
 
 
 | 964 | CONFIGRET | 
 
 
 
 
 | 965 | WINAPI | 
 
 
 
 
 | 966 | CM_Get_Device_ID_List_Size_ExA( | 
 
 
 
 
 | 967 | /*OUT*/ PULONG  pulLen, | 
 
 
 
 
 | 968 | /*IN*/ PCSTR  pszFilter, /*OPTIONAL*/ | 
 
 
 
 
 | 969 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 970 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 971 |  | 
 
 
 
 
 | 972 | CMAPI | 
 
 
 
 
 | 973 | CONFIGRET | 
 
 
 
 
 | 974 | WINAPI | 
 
 
 
 
 | 975 | CM_Get_Device_ID_List_Size_ExW( | 
 
 
 
 
 | 976 | /*OUT*/ PULONG  pulLen, | 
 
 
 
 
 | 977 | /*IN*/ PCWSTR  pszFilter, /*OPTIONAL*/ | 
 
 
 
 
 | 978 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 979 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 980 |  | 
 
 
 
 
 | 981 | CMAPI | 
 
 
 
 
 | 982 | CONFIGRET | 
 
 
 
 
 | 983 | WINAPI | 
 
 
 
 
 | 984 | CM_Get_Device_ID_List_SizeW( | 
 
 
 
 
 | 985 | /*OUT*/ PULONG  pulLen, | 
 
 
 
 
 | 986 | /*IN*/ PCWSTR  pszFilter, /*OPTIONAL*/ | 
 
 
 
 
 | 987 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 988 |  | 
 
 
 
 
 | 989 | #ifdef UNICODE | 
 
 
 
 
 | 990 | #define CM_Get_Device_ID_List_Size CM_Get_Device_ID_List_SizeW | 
 
 
 
 
 | 991 | #define CM_Get_Device_ID_List_Size_Ex CM_Get_Device_ID_List_Size_ExW | 
 
 
 
 
 | 992 | #else | 
 
 
 
 
 | 993 | #define CM_Get_Device_ID_List_Size CM_Get_Device_ID_List_SizeA | 
 
 
 
 
 | 994 | #define CM_Get_Device_ID_List_Size_Ex CM_Get_Device_ID_List_Size_ExA | 
 
 
 
 
 | 995 | #endif /* UNICODE */ | 
 
 
 
 
 | 996 |  | 
 
 
 
 
 | 997 | CMAPI | 
 
 
 
 
 | 998 | CONFIGRET | 
 
 
 
 
 | 999 | WINAPI | 
 
 
 
 
 | 1000 | CM_Get_Device_ID_Size( | 
 
 
 
 
 | 1001 | /*OUT*/ PULONG  pulLen, | 
 
 
 
 
 | 1002 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1003 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1004 |  | 
 
 
 
 
 | 1005 | CMAPI | 
 
 
 
 
 | 1006 | CONFIGRET | 
 
 
 
 
 | 1007 | WINAPI | 
 
 
 
 
 | 1008 | CM_Get_Device_ID_Size_Ex( | 
 
 
 
 
 | 1009 | /*OUT*/ PULONG  pulLen, | 
 
 
 
 
 | 1010 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1011 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1012 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1013 |  | 
 
 
 
 
 | 1014 | /* FIXME: Obsolete CM_Get_Device_Interface_Alias */ | 
 
 
 
 
 | 1015 | /* FIXME: Obsolete CM_Get_Device_Interface_Alias_Ex */ | 
 
 
 
 
 | 1016 | /* FIXME: Obsolete CM_Get_Device_Interface_List */ | 
 
 
 
 
 | 1017 | /* FIXME: Obsolete CM_Get_Device_Interface_List_Ex */ | 
 
 
 
 
 | 1018 | /* FIXME: Obsolete CM_Get_Device_Interface_List_Size */ | 
 
 
 
 
 | 1019 | /* FIXME: Obsolete CM_Get_Device_Interface_List_Size_Ex */ | 
 
 
 
 
 | 1020 | /* FIXME: Obsolete CM_Get_DevNode_Custom_Property */ | 
 
 
 
 
 | 1021 | /* FIXME: Obsolete CM_Get_DevNode_Custom_Property_Ex */ | 
 
 
 
 
 | 1022 | /* FIXME: Obsolete CM_Get_DevNode_Registry_Property */ | 
 
 
 
 
 | 1023 |  | 
 
 
 
 
 | 1024 | CMAPI | 
 
 
 
 
 | 1025 | CONFIGRET | 
 
 
 
 
 | 1026 | WINAPI | 
 
 
 
 
 | 1027 | CM_Get_DevNode_Status( | 
 
 
 
 
 | 1028 | /*OUT*/ PULONG  pulStatus, | 
 
 
 
 
 | 1029 | /*OUT*/ PULONG  pulProblemNumber, | 
 
 
 
 
 | 1030 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1031 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1032 |  | 
 
 
 
 
 | 1033 | CMAPI | 
 
 
 
 
 | 1034 | CONFIGRET | 
 
 
 
 
 | 1035 | WINAPI | 
 
 
 
 
 | 1036 | CM_Get_DevNode_Status_Ex( | 
 
 
 
 
 | 1037 | /*OUT*/ PULONG  pulStatus, | 
 
 
 
 
 | 1038 | /*OUT*/ PULONG  pulProblemNumber, | 
 
 
 
 
 | 1039 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1040 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1041 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1042 |  | 
 
 
 
 
 | 1043 | #define CM_Get_DevInst_Status CM_Get_DevNode_Status | 
 
 
 
 
 | 1044 | #define CM_Get_DevInst_Status_Ex CM_Get_DevNode_Status_Ex | 
 
 
 
 
 | 1045 |  | 
 
 
 
 
 | 1046 | /* CM_Get_First_Log_Conf.ulFlags constants */ | 
 
 
 
 
 | 1047 | #define BASIC_LOG_CONF    0x00000000  /* Specifies the req list. */ | 
 
 
 
 
 | 1048 | #define FILTERED_LOG_CONF 0x00000001  /* Specifies the filtered req list. */ | 
 
 
 
 
 | 1049 | #define ALLOC_LOG_CONF    0x00000002  /* Specifies the Alloc Element. */ | 
 
 
 
 
 | 1050 | #define BOOT_LOG_CONF     0x00000003  /* Specifies the RM Alloc Element. */ | 
 
 
 
 
 | 1051 | #define FORCED_LOG_CONF   0x00000004  /* Specifies the Forced Log Conf */ | 
 
 
 
 
 | 1052 | #define OVERRIDE_LOG_CONF 0x00000005  /* Specifies the Override req list. */ | 
 
 
 
 
 | 1053 | #define NUM_LOG_CONF      0x00000006  /* Number of Log Conf type */ | 
 
 
 
 
 | 1054 | #define LOG_CONF_BITS     0x00000007  /* The bits of the log conf type. */ | 
 
 
 
 
 | 1055 |  | 
 
 
 
 
 | 1056 | CMAPI | 
 
 
 
 
 | 1057 | CONFIGRET | 
 
 
 
 
 | 1058 | WINAPI | 
 
 
 
 
 | 1059 | CM_Get_First_Log_Conf( | 
 
 
 
 
 | 1060 | /*OUT*/ PLOG_CONF  plcLogConf, /*OPTIONAL*/ | 
 
 
 
 
 | 1061 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1062 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1063 |  | 
 
 
 
 
 | 1064 | CMAPI | 
 
 
 
 
 | 1065 | CONFIGRET | 
 
 
 
 
 | 1066 | WINAPI | 
 
 
 
 
 | 1067 | CM_Get_First_Log_Conf_Ex( | 
 
 
 
 
 | 1068 | /*OUT*/ PLOG_CONF  plcLogConf, /*OPTIONAL*/ | 
 
 
 
 
 | 1069 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1070 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1071 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1072 |  | 
 
 
 
 
 | 1073 | /* FIXME: Obsolete CM_Get_Global_State */ | 
 
 
 
 
 | 1074 | /* FIXME: Obsolete CM_Get_Global_State_Ex */ | 
 
 
 
 
 | 1075 | /* FIXME: Obsolete CM_Get_Hardware_Profile_Info */ | 
 
 
 
 
 | 1076 | /* FIXME: Obsolete CM_Get_Hardware_Profile_Info_Ex */ | 
 
 
 
 
 | 1077 | /* FIXME: Obsolete CM_Get_HW_Prof_Flags */ | 
 
 
 
 
 | 1078 | /* FIXME: Obsolete CM_Get_HW_Prof_Flags_Ex */ | 
 
 
 
 
 | 1079 |  | 
 
 
 
 
 | 1080 | CMAPI | 
 
 
 
 
 | 1081 | CONFIGRET | 
 
 
 
 
 | 1082 | WINAPI | 
 
 
 
 
 | 1083 | CM_Get_Log_Conf_Priority( | 
 
 
 
 
 | 1084 | /*IN*/ LOG_CONF  lcLogConf, | 
 
 
 
 
 | 1085 | /*OUT*/ PPRIORITY  pPriority, | 
 
 
 
 
 | 1086 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1087 |  | 
 
 
 
 
 | 1088 | CMAPI | 
 
 
 
 
 | 1089 | CONFIGRET | 
 
 
 
 
 | 1090 | WINAPI | 
 
 
 
 
 | 1091 | CM_Get_Log_Conf_Priority_Ex( | 
 
 
 
 
 | 1092 | /*IN*/ LOG_CONF  lcLogConf, | 
 
 
 
 
 | 1093 | /*OUT*/ PPRIORITY  pPriority, | 
 
 
 
 
 | 1094 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1095 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1096 |  | 
 
 
 
 
 | 1097 | CMAPI | 
 
 
 
 
 | 1098 | CONFIGRET | 
 
 
 
 
 | 1099 | WINAPI | 
 
 
 
 
 | 1100 | CM_Get_Next_Log_Conf( | 
 
 
 
 
 | 1101 | /*OUT*/ PLOG_CONF  plcLogConf, /*OPTIONAL*/ | 
 
 
 
 
 | 1102 | /*IN*/ LOG_CONF  lcLogConf, | 
 
 
 
 
 | 1103 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1104 |  | 
 
 
 
 
 | 1105 | CMAPI | 
 
 
 
 
 | 1106 | CONFIGRET | 
 
 
 
 
 | 1107 | WINAPI | 
 
 
 
 
 | 1108 | CM_Get_Next_Log_Conf_Ex( | 
 
 
 
 
 | 1109 | /*OUT*/ PLOG_CONF  plcLogConf, /*OPTIONAL*/ | 
 
 
 
 
 | 1110 | /*IN*/ LOG_CONF  lcLogConf, | 
 
 
 
 
 | 1111 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1112 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1113 |  | 
 
 
 
 
 | 1114 | CMAPI | 
 
 
 
 
 | 1115 | CONFIGRET | 
 
 
 
 
 | 1116 | WINAPI | 
 
 
 
 
 | 1117 | CM_Get_Next_Res_Des( | 
 
 
 
 
 | 1118 | /*OUT*/ PRES_DES  prdResDes, | 
 
 
 
 
 | 1119 | /*IN*/ RES_DES  rdResDes, | 
 
 
 
 
 | 1120 | /*IN*/ RESOURCEID  ForResource, | 
 
 
 
 
 | 1121 | /*OUT*/ PRESOURCEID  pResourceID, | 
 
 
 
 
 | 1122 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1123 |  | 
 
 
 
 
 | 1124 | CMAPI | 
 
 
 
 
 | 1125 | CONFIGRET | 
 
 
 
 
 | 1126 | WINAPI | 
 
 
 
 
 | 1127 | CM_Get_Next_Res_Des_Ex( | 
 
 
 
 
 | 1128 | /*OUT*/ PRES_DES  prdResDes, | 
 
 
 
 
 | 1129 | /*IN*/ RES_DES  rdResDes, | 
 
 
 
 
 | 1130 | /*IN*/ RESOURCEID  ForResource, | 
 
 
 
 
 | 1131 | /*OUT*/ PRESOURCEID  pResourceID, | 
 
 
 
 
 | 1132 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1133 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1134 |  | 
 
 
 
 
 | 1135 | CMAPI | 
 
 
 
 
 | 1136 | CONFIGRET | 
 
 
 
 
 | 1137 | WINAPI | 
 
 
 
 
 | 1138 | CM_Get_Parent( | 
 
 
 
 
 | 1139 | /*OUT*/ PDEVINST  pdnDevInst, | 
 
 
 
 
 | 1140 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1141 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1142 |  | 
 
 
 
 
 | 1143 | CMAPI | 
 
 
 
 
 | 1144 | CONFIGRET | 
 
 
 
 
 | 1145 | WINAPI | 
 
 
 
 
 | 1146 | CM_Get_Parent_Ex( | 
 
 
 
 
 | 1147 | /*OUT*/ PDEVINST  pdnDevInst, | 
 
 
 
 
 | 1148 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1149 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1150 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1151 |  | 
 
 
 
 
 | 1152 | CMAPI | 
 
 
 
 
 | 1153 | CONFIGRET | 
 
 
 
 
 | 1154 | WINAPI | 
 
 
 
 
 | 1155 | CM_Get_Res_Des_Data( | 
 
 
 
 
 | 1156 | /*IN*/ RES_DES  rdResDes, | 
 
 
 
 
 | 1157 | /*OUT*/ PVOID  Buffer, | 
 
 
 
 
 | 1158 | /*IN*/ ULONG  BufferLen, | 
 
 
 
 
 | 1159 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1160 |  | 
 
 
 
 
 | 1161 | CMAPI | 
 
 
 
 
 | 1162 | CONFIGRET | 
 
 
 
 
 | 1163 | WINAPI | 
 
 
 
 
 | 1164 | CM_Get_Res_Des_Data_Ex( | 
 
 
 
 
 | 1165 | /*IN*/ RES_DES  rdResDes, | 
 
 
 
 
 | 1166 | /*OUT*/ PVOID  Buffer, | 
 
 
 
 
 | 1167 | /*IN*/ ULONG  BufferLen, | 
 
 
 
 
 | 1168 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1169 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1170 |  | 
 
 
 
 
 | 1171 | CMAPI | 
 
 
 
 
 | 1172 | CONFIGRET | 
 
 
 
 
 | 1173 | WINAPI | 
 
 
 
 
 | 1174 | CM_Get_Res_Des_Data_Size( | 
 
 
 
 
 | 1175 | /*OUT*/ PULONG  pulSize, | 
 
 
 
 
 | 1176 | /*IN*/ RES_DES  rdResDes, | 
 
 
 
 
 | 1177 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1178 |  | 
 
 
 
 
 | 1179 | CMAPI | 
 
 
 
 
 | 1180 | CONFIGRET | 
 
 
 
 
 | 1181 | WINAPI | 
 
 
 
 
 | 1182 | CM_Get_Res_Des_Data_Size_Ex( | 
 
 
 
 
 | 1183 | /*OUT*/ PULONG  pulSize, | 
 
 
 
 
 | 1184 | /*IN*/ RES_DES  rdResDes, | 
 
 
 
 
 | 1185 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1186 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1187 |  | 
 
 
 
 
 | 1188 | CMAPI | 
 
 
 
 
 | 1189 | CONFIGRET | 
 
 
 
 
 | 1190 | WINAPI | 
 
 
 
 
 | 1191 | CM_Get_Resource_Conflict_Count( | 
 
 
 
 
 | 1192 | /*IN*/ CONFLICT_LIST  clConflictList, | 
 
 
 
 
 | 1193 | /*OUT*/ PULONG  pulCount); | 
 
 
 
 
 | 1194 |  | 
 
 
 
 
 | 1195 | CMAPI | 
 
 
 
 
 | 1196 | CONFIGRET | 
 
 
 
 
 | 1197 | WINAPI | 
 
 
 
 
 | 1198 | CM_Get_Resource_Conflict_DetailsA( | 
 
 
 
 
 | 1199 | /*IN*/ CONFLICT_LIST  clConflictList, | 
 
 
 
 
 | 1200 | /*IN*/ ULONG  ulIndex, | 
 
 
 
 
 | 1201 | /*IN OUT*/ PCONFLICT_DETAILS_A  pConflictDetails); | 
 
 
 
 
 | 1202 |  | 
 
 
 
 
 | 1203 | CMAPI | 
 
 
 
 
 | 1204 | CONFIGRET | 
 
 
 
 
 | 1205 | WINAPI | 
 
 
 
 
 | 1206 | CM_Get_Resource_Conflict_DetailsW( | 
 
 
 
 
 | 1207 | /*IN*/ CONFLICT_LIST  clConflictList, | 
 
 
 
 
 | 1208 | /*IN*/ ULONG  ulIndex, | 
 
 
 
 
 | 1209 | /*IN OUT*/ PCONFLICT_DETAILS_W  pConflictDetails); | 
 
 
 
 
 | 1210 |  | 
 
 
 
 
 | 1211 | #ifdef UNICODE | 
 
 
 
 
 | 1212 | #define CM_Get_Resource_Conflict_Details CM_Get_Resource_Conflict_DetailsW | 
 
 
 
 
 | 1213 | #else | 
 
 
 
 
 | 1214 | #define CM_Get_Resource_Conflict_Details CM_Get_Resource_Conflict_DetailsA | 
 
 
 
 
 | 1215 | #endif /* UNICODE */ | 
 
 
 
 
 | 1216 |  | 
 
 
 
 
 | 1217 | CMAPI | 
 
 
 
 
 | 1218 | CONFIGRET | 
 
 
 
 
 | 1219 | WINAPI | 
 
 
 
 
 | 1220 | CM_Get_Sibling( | 
 
 
 
 
 | 1221 | /*OUT*/ PDEVINST  pdnDevInst, | 
 
 
 
 
 | 1222 | /*IN*/ DEVINST  DevInst, | 
 
 
 
 
 | 1223 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1224 |  | 
 
 
 
 
 | 1225 | CMAPI | 
 
 
 
 
 | 1226 | CONFIGRET | 
 
 
 
 
 | 1227 | WINAPI | 
 
 
 
 
 | 1228 | CM_Get_Sibling_Ex( | 
 
 
 
 
 | 1229 | /*OUT*/ PDEVINST  pdnDevInst, | 
 
 
 
 
 | 1230 | /*IN*/ DEVINST  DevInst, | 
 
 
 
 
 | 1231 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1232 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1233 |  | 
 
 
 
 
 | 1234 | CMAPI | 
 
 
 
 
 | 1235 | WORD | 
 
 
 
 
 | 1236 | WINAPI | 
 
 
 
 
 | 1237 | CM_Get_Version( | 
 
 
 
 
 | 1238 | VOID); | 
 
 
 
 
 | 1239 |  | 
 
 
 
 
 | 1240 | CMAPI | 
 
 
 
 
 | 1241 | WORD | 
 
 
 
 
 | 1242 | WINAPI | 
 
 
 
 
 | 1243 | CM_Get_Version_Ex( | 
 
 
 
 
 | 1244 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1245 |  | 
 
 
 
 
 | 1246 | /* FIXME: Obsolete CM_Intersect_Range_List */ | 
 
 
 
 
 | 1247 | /* FIXME: Obsolete CM_Invert_Range_List */ | 
 
 
 
 
 | 1248 | /* FIXME: Obsolete CM_Is_Dock_Station_Present */ | 
 
 
 
 
 | 1249 | /* FIXME: Obsolete CM_Is_Dock_Station_Present_Ex */ | 
 
 
 
 
 | 1250 |  | 
 
 
 
 
 | 1251 | /* CM_Locate_DevNode.ulFlags constants */ | 
 
 
 
 
 | 1252 | #define CM_LOCATE_DEVNODE_NORMAL                0x00000000 | 
 
 
 
 
 | 1253 | #define CM_LOCATE_DEVNODE_PHANTOM               0x00000001 | 
 
 
 
 
 | 1254 | #define CM_LOCATE_DEVNODE_CANCELREMOVE          0x00000002 | 
 
 
 
 
 | 1255 | #define CM_LOCATE_DEVNODE_NOVALIDATION          0x00000004 | 
 
 
 
 
 | 1256 | #define CM_LOCATE_DEVNODE_BITS                  0x00000007 | 
 
 
 
 
 | 1257 |  | 
 
 
 
 
 | 1258 | #define CM_LOCATE_DEVINST_NORMAL                CM_LOCATE_DEVNODE_NORMAL | 
 
 
 
 
 | 1259 | #define CM_LOCATE_DEVINST_PHANTOM               CM_LOCATE_DEVNODE_PHANTOM | 
 
 
 
 
 | 1260 | #define CM_LOCATE_DEVINST_CANCELREMOVE          CM_LOCATE_DEVNODE_CANCELREMOVE | 
 
 
 
 
 | 1261 | #define CM_LOCATE_DEVINST_NOVALIDATION          CM_LOCATE_DEVNODE_NOVALIDATION | 
 
 
 
 
 | 1262 | #define CM_LOCATE_DEVINST_BITS                  CM_LOCATE_DEVNODE_BITS | 
 
 
 
 
 | 1263 |  | 
 
 
 
 
 | 1264 | CMAPI | 
 
 
 
 
 | 1265 | CONFIGRET | 
 
 
 
 
 | 1266 | WINAPI | 
 
 
 
 
 | 1267 | CM_Locate_DevNodeA( | 
 
 
 
 
 | 1268 | /*OUT*/ PDEVINST  pdnDevInst, | 
 
 
 
 
 | 1269 | /*IN*/ DEVINSTID_A  pDeviceID, /*OPTIONAL*/ | 
 
 
 
 
 | 1270 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1271 |  | 
 
 
 
 
 | 1272 | CMAPI | 
 
 
 
 
 | 1273 | CONFIGRET | 
 
 
 
 
 | 1274 | WINAPI | 
 
 
 
 
 | 1275 | CM_Locate_DevNode_ExA( | 
 
 
 
 
 | 1276 | /*OUT*/ PDEVINST  pdnDevInst, | 
 
 
 
 
 | 1277 | /*IN*/ DEVINSTID_A  pDeviceID, /*OPTIONAL*/ | 
 
 
 
 
 | 1278 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1279 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1280 |  | 
 
 
 
 
 | 1281 | CMAPI | 
 
 
 
 
 | 1282 | CONFIGRET | 
 
 
 
 
 | 1283 | WINAPI | 
 
 
 
 
 | 1284 | CM_Locate_DevNode_ExW( | 
 
 
 
 
 | 1285 | /*OUT*/ PDEVINST  pdnDevInst, | 
 
 
 
 
 | 1286 | /*IN*/ DEVINSTID_W  pDeviceID, /*OPTIONAL*/ | 
 
 
 
 
 | 1287 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1288 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1289 |  | 
 
 
 
 
 | 1290 | CMAPI | 
 
 
 
 
 | 1291 | CONFIGRET | 
 
 
 
 
 | 1292 | WINAPI | 
 
 
 
 
 | 1293 | CM_Locate_DevNodeW( | 
 
 
 
 
 | 1294 | /*OUT*/ PDEVINST  pdnDevInst, | 
 
 
 
 
 | 1295 | /*IN*/ DEVINSTID_W  pDeviceID, /*OPTIONAL*/ | 
 
 
 
 
 | 1296 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1297 |  | 
 
 
 
 
 | 1298 | #define CM_Locate_DevInstA CM_Locate_DevNodeA | 
 
 
 
 
 | 1299 | #define CM_Locate_DevInstW CM_Locate_DevNodeW | 
 
 
 
 
 | 1300 | #define CM_Locate_DevInst_ExA CM_Locate_DevNode_ExA | 
 
 
 
 
 | 1301 | #define CM_Locate_DevInst_ExW CM_Locate_DevNode_ExW | 
 
 
 
 
 | 1302 |  | 
 
 
 
 
 | 1303 | #ifdef UNICODE | 
 
 
 
 
 | 1304 | #define CM_Locate_DevNode CM_Locate_DevNodeW | 
 
 
 
 
 | 1305 | #define CM_Locate_DevInst CM_Locate_DevNodeW | 
 
 
 
 
 | 1306 | #define CM_Locate_DevNode_Ex CM_Locate_DevNode_ExW | 
 
 
 
 
 | 1307 | #define CM_Locate_DevInst_Ex CM_Locate_DevNode_ExW | 
 
 
 
 
 | 1308 | #else | 
 
 
 
 
 | 1309 | #define CM_Locate_DevNode CM_Locate_DevNodeA | 
 
 
 
 
 | 1310 | #define CM_Locate_DevInst CM_Locate_DevNodeA | 
 
 
 
 
 | 1311 | #define CM_Locate_DevNode_Ex CM_Locate_DevNode_ExA | 
 
 
 
 
 | 1312 | #define CM_Locate_DevInst_Ex CM_Locate_DevNode_ExA | 
 
 
 
 
 | 1313 | #endif /* UNICODE */ | 
 
 
 
 
 | 1314 |  | 
 
 
 
 
 | 1315 | /* FIXME: Obsolete CM_Merge_Range_List */ | 
 
 
 
 
 | 1316 |  | 
 
 
 
 
 | 1317 | CMAPI | 
 
 
 
 
 | 1318 | CONFIGRET | 
 
 
 
 
 | 1319 | WINAPI | 
 
 
 
 
 | 1320 | CM_Modify_Res_Des( | 
 
 
 
 
 | 1321 | /*OUT*/ PRES_DES  prdResDes, | 
 
 
 
 
 | 1322 | /*IN*/ RES_DES  rdResDes, | 
 
 
 
 
 | 1323 | /*IN*/ RESOURCEID  ResourceID, | 
 
 
 
 
 | 1324 | /*IN*/ PCVOID  ResourceData, | 
 
 
 
 
 | 1325 | /*IN*/ ULONG  ResourceLen, | 
 
 
 
 
 | 1326 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1327 |  | 
 
 
 
 
 | 1328 | CMAPI | 
 
 
 
 
 | 1329 | CONFIGRET | 
 
 
 
 
 | 1330 | WINAPI | 
 
 
 
 
 | 1331 | CM_Modify_Res_Des_Ex( | 
 
 
 
 
 | 1332 | /*OUT*/ PRES_DES  prdResDes, | 
 
 
 
 
 | 1333 | /*IN*/ RES_DES  rdResDes, | 
 
 
 
 
 | 1334 | /*IN*/ RESOURCEID  ResourceID, | 
 
 
 
 
 | 1335 | /*IN*/ PCVOID  ResourceData, | 
 
 
 
 
 | 1336 | /*IN*/ ULONG  ResourceLen, | 
 
 
 
 
 | 1337 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1338 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1339 |  | 
 
 
 
 
 | 1340 | /* FIXME: Obsolete CM_Move_DevNode */ | 
 
 
 
 
 | 1341 | /* FIXME: Obsolete CM_Move_DevNode_Ex */ | 
 
 
 
 
 | 1342 | /* FIXME: Obsolete CM_Next_Range */ | 
 
 
 
 
 | 1343 | /* FIXME: Obsolete CM_Open_Class_Key */ | 
 
 
 
 
 | 1344 | /* FIXME: Obsolete CM_Open_Class_Key_Ex */ | 
 
 
 
 
 | 1345 | /* FIXME: Obsolete CM_Open_DevNode_Key */ | 
 
 
 
 
 | 1346 | /* FIXME: Obsolete CM_Open_DevNode_Key_Ex */ | 
 
 
 
 
 | 1347 |  | 
 
 
 
 
 | 1348 | /* CM_Query_And_Remove_SubTree.ulFlags constants */ | 
 
 
 
 
 | 1349 | #define CM_REMOVE_UI_OK                                 0x00000000 | 
 
 
 
 
 | 1350 | #define CM_REMOVE_UI_NOT_OK                             0x00000001 | 
 
 
 
 
 | 1351 | #define CM_REMOVE_NO_RESTART                            0x00000002 | 
 
 
 
 
 | 1352 | #define CM_REMOVE_BITS                                  0x00000003 | 
 
 
 
 
 | 1353 |  | 
 
 
 
 
 | 1354 | CMAPI | 
 
 
 
 
 | 1355 | CONFIGRET | 
 
 
 
 
 | 1356 | WINAPI | 
 
 
 
 
 | 1357 | CM_Query_And_Remove_SubTreeA( | 
 
 
 
 
 | 1358 | /*IN*/ DEVINST dnAncestor, | 
 
 
 
 
 | 1359 | /*OUT*/ PPNP_VETO_TYPE pVetoType, | 
 
 
 
 
 | 1360 | /*OUT*/ LPSTR pszVetoName, | 
 
 
 
 
 | 1361 | /*IN*/ ULONG ulNameLength, | 
 
 
 
 
 | 1362 | /*IN*/ ULONG ulFlags); | 
 
 
 
 
 | 1363 |  | 
 
 
 
 
 | 1364 | CMAPI | 
 
 
 
 
 | 1365 | CONFIGRET | 
 
 
 
 
 | 1366 | WINAPI | 
 
 
 
 
 | 1367 | CM_Query_And_Remove_SubTreeW( | 
 
 
 
 
 | 1368 | /*IN*/ DEVINST dnAncestor, | 
 
 
 
 
 | 1369 | /*OUT*/ PPNP_VETO_TYPE pVetoType, | 
 
 
 
 
 | 1370 | /*OUT*/ LPWSTR pszVetoName, | 
 
 
 
 
 | 1371 | /*IN*/ ULONG ulNameLength, | 
 
 
 
 
 | 1372 | /*IN*/ ULONG ulFlags); | 
 
 
 
 
 | 1373 |  | 
 
 
 
 
 | 1374 | CMAPI | 
 
 
 
 
 | 1375 | CONFIGRET | 
 
 
 
 
 | 1376 | WINAPI | 
 
 
 
 
 | 1377 | CM_Query_And_Remove_SubTree_ExA( | 
 
 
 
 
 | 1378 | /*IN*/ DEVINST dnAncestor, | 
 
 
 
 
 | 1379 | /*OUT*/ PPNP_VETO_TYPE pVetoType, | 
 
 
 
 
 | 1380 | /*OUT*/ LPSTR pszVetoName, | 
 
 
 
 
 | 1381 | /*IN*/ ULONG ulNameLength, | 
 
 
 
 
 | 1382 | /*IN*/ ULONG ulFlags, | 
 
 
 
 
 | 1383 | /*IN*/ HMACHINE hMachine); | 
 
 
 
 
 | 1384 |  | 
 
 
 
 
 | 1385 | CMAPI | 
 
 
 
 
 | 1386 | CONFIGRET | 
 
 
 
 
 | 1387 | WINAPI | 
 
 
 
 
 | 1388 | CM_Query_And_Remove_SubTree_ExW( | 
 
 
 
 
 | 1389 | /*IN*/ DEVINST dnAncestor, | 
 
 
 
 
 | 1390 | /*OUT*/ PPNP_VETO_TYPE pVetoType, | 
 
 
 
 
 | 1391 | /*OUT*/ LPWSTR pszVetoName, | 
 
 
 
 
 | 1392 | /*IN*/ ULONG ulNameLength, | 
 
 
 
 
 | 1393 | /*IN*/ ULONG ulFlags, | 
 
 
 
 
 | 1394 | /*IN*/ HMACHINE hMachine); | 
 
 
 
 
 | 1395 |  | 
 
 
 
 
 | 1396 | /* FIXME: Obsolete CM_Query_Arbitrator_Free_Data */ | 
 
 
 
 
 | 1397 | /* FIXME: Obsolete CM_Query_Arbitrator_Free_Data_Ex */ | 
 
 
 
 
 | 1398 | /* FIXME: Obsolete CM_Query_Arbitrator_Free_Size */ | 
 
 
 
 
 | 1399 | /* FIXME: Obsolete CM_Query_Arbitrator_Free_Size_Ex */ | 
 
 
 
 
 | 1400 | /* FIXME: Obsolete CM_Query_Arbitrator_Free_Size_Ex */ | 
 
 
 
 
 | 1401 | /* FIXME: Obsolete CM_Query_Remove_SubTree */ | 
 
 
 
 
 | 1402 | /* FIXME: Obsolete CM_Query_Remove_SubTree_Ex */ | 
 
 
 
 
 | 1403 |  | 
 
 
 
 
 | 1404 | CMAPI | 
 
 
 
 
 | 1405 | CONFIGRET | 
 
 
 
 
 | 1406 | WINAPI | 
 
 
 
 
 | 1407 | CM_Query_Resource_Conflict_List( | 
 
 
 
 
 | 1408 | /*OUT*/ PCONFLICT_LIST  pclConflictList, | 
 
 
 
 
 | 1409 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1410 | /*IN*/ RESOURCEID  ResourceID, | 
 
 
 
 
 | 1411 | /*IN*/ PCVOID  ResourceData, | 
 
 
 
 
 | 1412 | /*IN*/ ULONG  ResourceLen, | 
 
 
 
 
 | 1413 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1414 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1415 |  | 
 
 
 
 
 | 1416 | /* CM_Reenumerate_DevNode.ulFlags constants */ | 
 
 
 
 
 | 1417 | #define CM_REENUMERATE_NORMAL             0x00000000 | 
 
 
 
 
 | 1418 | #define CM_REENUMERATE_SYNCHRONOUS        0x00000001 | 
 
 
 
 
 | 1419 | #define CM_REENUMERATE_RETRY_INSTALLATION 0x00000002 | 
 
 
 
 
 | 1420 | #define CM_REENUMERATE_ASYNCHRONOUS       0x00000004 | 
 
 
 
 
 | 1421 | #define CM_REENUMERATE_BITS               0x00000007 | 
 
 
 
 
 | 1422 |  | 
 
 
 
 
 | 1423 | CMAPI | 
 
 
 
 
 | 1424 | CONFIGRET | 
 
 
 
 
 | 1425 | WINAPI | 
 
 
 
 
 | 1426 | CM_Reenumerate_DevNode( | 
 
 
 
 
 | 1427 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1428 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1429 |  | 
 
 
 
 
 | 1430 | CMAPI | 
 
 
 
 
 | 1431 | CONFIGRET | 
 
 
 
 
 | 1432 | WINAPI | 
 
 
 
 
 | 1433 | CM_Reenumerate_DevNode_Ex( | 
 
 
 
 
 | 1434 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1435 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1436 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1437 |  | 
 
 
 
 
 | 1438 | #define CM_Reenumerate_DevInst CM_Reenumerate_DevNode | 
 
 
 
 
 | 1439 | #define CM_Reenumerate_DevInst_Ex CM_Reenumerate_DevNode_Ex | 
 
 
 
 
 | 1440 |  | 
 
 
 
 
 | 1441 | /* FIXME: Obsolete CM_Register_Device_Driver */ | 
 
 
 
 
 | 1442 | /* FIXME: Obsolete CM_Register_Device_Driver_Ex */ | 
 
 
 
 
 | 1443 | /* FIXME: Obsolete CM_Register_Device_Interface */ | 
 
 
 
 
 | 1444 | /* FIXME: Obsolete CM_Register_Device_Interface_Ex */ | 
 
 
 
 
 | 1445 | /* FIXME: Obsolete CM_Remove_SubTree */ | 
 
 
 
 
 | 1446 | /* FIXME: Obsolete CM_Remove_SubTree_Ex */ | 
 
 
 
 
 | 1447 |  | 
 
 
 
 
 | 1448 | CMAPI | 
 
 
 
 
 | 1449 | CONFIGRET | 
 
 
 
 
 | 1450 | WINAPI | 
 
 
 
 
 | 1451 | CM_Request_Device_EjectA( | 
 
 
 
 
 | 1452 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1453 | /*OUT*/ PPNP_VETO_TYPE  pVetoType, | 
 
 
 
 
 | 1454 | /*OUT*/ LPSTR  pszVetoName, | 
 
 
 
 
 | 1455 | /*IN*/ ULONG  ulNameLength, | 
 
 
 
 
 | 1456 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1457 |  | 
 
 
 
 
 | 1458 | CMAPI | 
 
 
 
 
 | 1459 | CONFIGRET | 
 
 
 
 
 | 1460 | WINAPI | 
 
 
 
 
 | 1461 | CM_Request_Device_Eject_ExW( | 
 
 
 
 
 | 1462 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1463 | /*OUT*/ PPNP_VETO_TYPE  pVetoType, | 
 
 
 
 
 | 1464 | /*OUT*/ LPWSTR  pszVetoName, | 
 
 
 
 
 | 1465 | /*IN*/ ULONG  ulNameLength, | 
 
 
 
 
 | 1466 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1467 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1468 |  | 
 
 
 
 
 | 1469 | CMAPI | 
 
 
 
 
 | 1470 | CONFIGRET | 
 
 
 
 
 | 1471 | WINAPI | 
 
 
 
 
 | 1472 | CM_Request_Device_Eject_ExA( | 
 
 
 
 
 | 1473 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1474 | /*OUT*/ PPNP_VETO_TYPE  pVetoType, | 
 
 
 
 
 | 1475 | /*OUT*/ LPSTR  pszVetoName, | 
 
 
 
 
 | 1476 | /*IN*/ ULONG  ulNameLength, | 
 
 
 
 
 | 1477 | /*IN*/ ULONG  ulFlags, | 
 
 
 
 
 | 1478 | /*IN*/ HMACHINE  hMachine); | 
 
 
 
 
 | 1479 |  | 
 
 
 
 
 | 1480 | CMAPI | 
 
 
 
 
 | 1481 | CONFIGRET | 
 
 
 
 
 | 1482 | WINAPI | 
 
 
 
 
 | 1483 | CM_Request_Device_EjectW( | 
 
 
 
 
 | 1484 | /*IN*/ DEVINST  dnDevInst, | 
 
 
 
 
 | 1485 | /*OUT*/ PPNP_VETO_TYPE  pVetoType, | 
 
 
 
 
 | 1486 | /*OUT*/ LPWSTR  pszVetoName, | 
 
 
 
 
 | 1487 | /*IN*/ ULONG  ulNameLength, | 
 
 
 
 
 | 1488 | /*IN*/ ULONG  ulFlags); | 
 
 
 
 
 | 1489 |  | 
 
 
 
 
 | 1490 | #ifdef UNICODE | 
 
 
 
 
 | 1491 | #define CM_Request_Device_Eject CM_Request_Device_EjectW | 
 
 
 
 
 | 1492 | #define CM_Request_Device_Eject_Ex CM_Request_Device_Eject_ExW | 
 
 
 
 
 | 1493 | #else | 
 
 
 
 
 | 1494 | #define CM_Request_Device_Eject CM_Request_Device_EjectA | 
 
 
 
 
 | 1495 | #define CM_Request_Device_Eject_Ex CM_Request_Device_Eject_ExA | 
 
 
 
 
 | 1496 | #endif /* UNICODE */ | 
 
 
 
 
 | 1497 |  | 
 
 
 
 
 | 1498 | /* FIXME: Obsolete CM_Request_Eject_PC */ | 
 
 
 
 
 | 1499 | /* FIXME: Obsolete CM_Request_Eject_PC_Ex */ | 
 
 
 
 
 | 1500 | /* FIXME: Obsolete CM_Run_Detection */ | 
 
 
 
 
 | 1501 | /* FIXME: Obsolete CM_Run_Detection_Ex */ | 
 
 
 
 
 | 1502 | /* FIXME: Obsolete CM_Set_Class_Registry_Property */ | 
 
 
 
 
 | 1503 | /* FIXME: Obsolete CM_Set_DevNode_Problem */ | 
 
 
 
 
 | 1504 | /* FIXME: Obsolete CM_Set_DevNode_Problem_Ex */ | 
 
 
 
 
 | 1505 | /* FIXME: Obsolete CM_Set_DevNode_Registry_Property */ | 
 
 
 
 
 | 1506 | /* FIXME: Obsolete CM_Set_DevNode_Registry_Property_Ex */ | 
 
 
 
 
 | 1507 | /* FIXME: Obsolete CM_Set_HW_Prof */ | 
 
 
 
 
 | 1508 | /* FIXME: Obsolete CM_Set_HW_Prof_Ex */ | 
 
 
 
 
 | 1509 | /* FIXME: Obsolete CM_Set_HW_Prof_Flags */ | 
 
 
 
 
 | 1510 | /* FIXME: Obsolete CM_Set_HW_Prof_Flags_Ex */ | 
 
 
 
 
 | 1511 | /* FIXME: Obsolete CM_Setup_DevNode */ | 
 
 
 
 
 | 1512 | /* FIXME: Obsolete CM_Setup_DevNode_Ex */ | 
 
 
 
 
 | 1513 | /* FIXME: Obsolete CM_Test_Range_Available */ | 
 
 
 
 
 | 1514 | /* FIXME: Obsolete CM_Uninstall_DevNode */ | 
 
 
 
 
 | 1515 | /* FIXME: Obsolete CM_Uninstall_DevNode_Ex */ | 
 
 
 
 
 | 1516 | /* FIXME: Obsolete CM_Unregister_Device_Interface */ | 
 
 
 
 
 | 1517 | /* FIXME: Obsolete CM_Unregister_Device_Interface_Ex */ | 
 
 
 
 
 | 1518 |  | 
 
 
 
 
 | 1519 | #define CM_WaitNoPendingInstallEvents CMP_WaitNoPendingInstallEvents | 
 
 
 
 
 | 1520 |  | 
 
 
 
 
 | 1521 | CMAPI | 
 
 
 
 
 | 1522 | DWORD | 
 
 
 
 
 | 1523 | WINAPI | 
 
 
 
 
 | 1524 | CMP_WaitNoPendingInstallEvents( | 
 
 
 
 
 | 1525 | /*IN*/ DWORD dwTimeout); | 
 
 
 
 
 | 1526 |  | 
 
 
 
 
 | 1527 | #include <poppack.h> | 
 
 
 
 
 | 1528 |  | 
 
 
 
 
 | 1529 | #ifdef __cplusplus | 
 
 
 
 
 | 1530 | } | 
 
 
 
 
 | 1531 | #endif | 
 
 
 
 
 | 1532 |  | 
 
 
 
 
 | 1533 | #endif /* __CFGMGR32_H */ |