1 // Licensed under the Apache License, Version 2.0 2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license 3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option. 4 // All files in the project carrying such notice may not be copied, modified, or distributed 5 // except according to those terms. 6 //! user APIs for the Configuration Manager 7 use shared::basetsd::{DWORD_PTR, ULONG32, ULONG64, ULONG_PTR}; 8 use shared::cfg::PPNP_VETO_TYPE; 9 use shared::devpropdef::{DEVPROPKEY, DEVPROPTYPE}; 10 use shared::guiddef::{GUID, LPGUID}; 11 use shared::minwindef::{BOOL, BYTE, DWORD, MAX_PATH, PBOOL, PBYTE, PHKEY, PULONG, ULONG, WORD}; 12 use um::winnt::{ 13 ANYSIZE_ARRAY, CHAR, DWORDLONG, HANDLE, LARGE_INTEGER, LONG, LPCSTR, LPCWSTR, LPSTR, LPWSTR, 14 PCHAR, PCSTR, PCWSTR, PDWORDLONG, PSTR, PVOID, PWCHAR, PWSTR, ULONGLONG, VOID, WCHAR 15 }; 16 use um::winreg::REGSAM; 17 pub type PCVOID = *const VOID; 18 pub const MAX_DEVICE_ID_LEN: usize = 200; 19 pub const MAX_DEVNODE_ID_LEN: usize = MAX_DEVICE_ID_LEN; 20 pub const MAX_GUID_STRING_LEN: usize = 39; 21 pub const MAX_CLASS_NAME_LEN: usize = 32; 22 pub const MAX_PROFILE_LEN: usize = 80; 23 pub const MAX_CONFIG_VALUE: DWORD = 9999; 24 pub const MAX_INSTANCE_VALUE: DWORD = 9999; 25 pub const MAX_MEM_REGISTERS: DWORD = 9; 26 pub const MAX_IO_PORTS: DWORD = 20; 27 pub const MAX_IRQS: DWORD = 7; 28 pub const MAX_DMA_CHANNELS: DWORD = 7; 29 pub const DWORD_MAX: DWORD = 0xffffffff; 30 pub const DWORDLONG_MAX: DWORDLONG = 0xffffffffffffffff; 31 pub const CONFIGMG_VERSION: DWORD = 0x0400; 32 pub type RETURN_TYPE = DWORD; 33 pub type CONFIGRET = RETURN_TYPE; 34 pub type DEVNODE = DWORD; 35 pub type DEVINST = DWORD; 36 pub type PDEVNODE = *mut DEVNODE; 37 pub type PDEVINST = *mut DEVNODE; 38 pub type DEVNODEID_A = *mut CHAR; 39 pub type DEVINSTID_A = *mut CHAR; 40 pub type DEVNODEID_W = *mut WCHAR; 41 pub type DEVINSTID_W = *mut WCHAR; 42 pub type LOG_CONF = DWORD_PTR; 43 pub type PLOG_CONF = *mut LOG_CONF; 44 pub type RES_DES = DWORD_PTR; 45 pub type PRES_DES = *mut RES_DES; 46 pub type RESOURCEID = ULONG; 47 pub type PRESOURCEID = *mut RESOURCEID; 48 pub type PRIORITY = ULONG; 49 pub type PPRIORITY = *mut PRIORITY; 50 pub type RANGE_LIST = DWORD_PTR; 51 pub type PRANGE_LIST = *mut RANGE_LIST; 52 pub type RANGE_ELEMENT = DWORD_PTR; 53 pub type PRANGE_ELEMENT = *mut RANGE_ELEMENT; 54 pub type HMACHINE = HANDLE; 55 pub type PHMACHINE = *mut HMACHINE; 56 pub type CONFLICT_LIST = ULONG_PTR; 57 pub type PCONFLICT_LIST = *mut CONFLICT_LIST; 58 STRUCT!{struct CONFLICT_DETAILS_A { 59 CD_ulSize: ULONG, 60 CD_ulMask: ULONG, 61 CD_dnDevInst: DEVINST, 62 CD_rdResDes: RES_DES, 63 CD_ulFlags: ULONG, 64 CD_szDescription: [CHAR; MAX_PATH], 65 }} 66 pub type PCONFLICT_DETAILS_A = *mut CONFLICT_DETAILS_A; 67 STRUCT!{struct CONFLICT_DETAILS_W { 68 CD_ulSize: ULONG, 69 CD_ulMask: ULONG, 70 CD_dnDevInst: DEVINST, 71 CD_rdResDes: RES_DES, 72 CD_ulFlags: ULONG, 73 CD_szDescription: [WCHAR; MAX_PATH], 74 }} 75 pub type PCONFLICT_DETAILS_W = *mut CONFLICT_DETAILS_W; 76 pub const CM_CDMASK_DEVINST: ULONG = 0x00000001; 77 pub const CM_CDMASK_RESDES: ULONG = 0x00000002; 78 pub const CM_CDMASK_FLAGS: ULONG = 0x00000004; 79 pub const CM_CDMASK_DESCRIPTION: ULONG = 0x00000008; 80 pub const CM_CDMASK_VALID: ULONG = 0x0000000F; 81 pub const CM_CDFLAGS_DRIVER: ULONG = 0x00000001; 82 pub const CM_CDFLAGS_ROOT_OWNED: ULONG = 0x00000002; 83 pub const CM_CDFLAGS_RESERVED: ULONG = 0x00000004; 84 pub type REGDISPOSITION = ULONG; 85 pub const mMD_MemoryType: DWORD = 0x1; 86 pub const fMD_MemoryType: DWORD = mMD_MemoryType; 87 pub const fMD_ROM: DWORD = 0x0; 88 pub const fMD_RAM: DWORD = 0x1; 89 pub const mMD_32_24: DWORD = 0x2; 90 pub const fMD_32_24: DWORD = mMD_32_24; 91 pub const fMD_24: DWORD = 0x0; 92 pub const fMD_32: DWORD = 0x2; 93 pub const mMD_Prefetchable: DWORD = 0x4; 94 pub const fMD_Prefetchable: DWORD = mMD_Prefetchable; 95 pub const fMD_Pref: DWORD = mMD_Prefetchable; 96 pub const fMD_PrefetchDisallowed: DWORD = 0x0; 97 pub const fMD_PrefetchAllowed: DWORD = 0x4; 98 pub const mMD_Readable: DWORD = 0x8; 99 pub const fMD_Readable: DWORD = mMD_Readable; 100 pub const fMD_ReadAllowed: DWORD = 0x0; 101 pub const fMD_ReadDisallowed: DWORD = 0x8; 102 pub const mMD_CombinedWrite: DWORD = 0x10; 103 pub const fMD_CombinedWrite: DWORD = mMD_CombinedWrite; 104 pub const fMD_CombinedWriteDisallowed: DWORD = 0x0; 105 pub const fMD_CombinedWriteAllowed: DWORD = 0x10; 106 pub const mMD_Cacheable: DWORD = 0x20; 107 pub const fMD_NonCacheable: DWORD = 0x0; 108 pub const fMD_Cacheable: DWORD = 0x20; 109 pub const fMD_WINDOW_DECODE: DWORD = 0x40; 110 pub const fMD_MEMORY_BAR: DWORD = 0x80; 111 STRUCT!{#[repr(packed)] struct MEM_RANGE { 112 MR_Align: DWORDLONG, 113 MR_nBytes: ULONG, 114 MR_Min: DWORDLONG, 115 MR_Max: DWORDLONG, 116 MR_Flags: DWORD, 117 MR_Reserved: DWORD, 118 }} 119 pub type PMEM_RANGE = *mut MEM_RANGE; 120 STRUCT!{#[repr(packed)] struct MEM_DES { 121 MD_Count: DWORD, 122 MD_Type: DWORD, 123 MD_Alloc_Base: DWORDLONG, 124 MD_Alloc_End: DWORDLONG, 125 MD_Flags: DWORD, 126 MD_Reserved: DWORD, 127 }} 128 pub type PMEM_DES = *mut MEM_DES; 129 STRUCT!{#[repr(packed)] struct MEM_RESOURCE { 130 MEM_Header: MEM_DES, 131 MEM_Data: [MEM_RANGE; ANYSIZE_ARRAY], 132 }} 133 pub type PMEM_RESOURCE = *mut MEM_RESOURCE; 134 STRUCT!{#[repr(packed)] struct MEM_LARGE_RANGE { 135 MLR_Align: DWORDLONG, 136 MLR_nBytes: ULONGLONG, 137 MLR_Min: DWORDLONG, 138 MLR_Max: DWORDLONG, 139 MLR_Flags: DWORD, 140 MLR_Reserved: DWORD, 141 }} 142 pub type PMEM_LARGE_RANGE = *mut MEM_LARGE_RANGE; 143 STRUCT!{#[repr(packed)] struct MEM_LARGE_DES { 144 MLD_Count: DWORD, 145 MLD_Type: DWORD, 146 MLD_Alloc_Base: DWORDLONG, 147 MLD_Alloc_End: DWORDLONG, 148 MLD_Flags: DWORD, 149 MLD_Reserved: DWORD, 150 }} 151 pub type PMEM_LARGE_DES = *mut MEM_LARGE_DES; 152 STRUCT!{#[repr(packed)] struct MEM_LARGE_RESOURCE { 153 MEM_LARGE_Header: MEM_LARGE_DES, 154 MEM_LARGE_Data: [MEM_LARGE_RANGE; ANYSIZE_ARRAY], 155 }} 156 pub type PMEM_LARGE_RESOURCE = *mut MEM_LARGE_RESOURCE; 157 pub const fIOD_PortType: DWORD = 0x1; 158 pub const fIOD_Memory: DWORD = 0x0; 159 pub const fIOD_IO: DWORD = 0x1; 160 pub const fIOD_DECODE: DWORD = 0x00fc; 161 pub const fIOD_10_BIT_DECODE: DWORD = 0x0004; 162 pub const fIOD_12_BIT_DECODE: DWORD = 0x0008; 163 pub const fIOD_16_BIT_DECODE: DWORD = 0x0010; 164 pub const fIOD_POSITIVE_DECODE: DWORD = 0x0020; 165 pub const fIOD_PASSIVE_DECODE: DWORD = 0x0040; 166 pub const fIOD_WINDOW_DECODE: DWORD = 0x0080; 167 pub const fIOD_PORT_BAR: DWORD = 0x0100; 168 pub const IO_ALIAS_10_BIT_DECODE: DWORDLONG = 0x00000004; 169 pub const IO_ALIAS_12_BIT_DECODE: DWORDLONG = 0x00000010; 170 pub const IO_ALIAS_16_BIT_DECODE: DWORDLONG = 0x00000000; 171 pub const IO_ALIAS_POSITIVE_DECODE: DWORDLONG = 0x000000FF; 172 STRUCT!{#[repr(packed)] struct IO_RANGE { 173 IOR_Align: DWORDLONG, 174 IOR_nPorts: DWORD, 175 IOR_Min: DWORDLONG, 176 IOR_Max: DWORDLONG, 177 IOR_RangeFlags: DWORD, 178 IOR_Alias: DWORDLONG, 179 }} 180 pub type PIO_RANGE = *mut IO_RANGE; 181 STRUCT!{#[repr(packed)] struct IO_DES { 182 IOD_Count: DWORD, 183 IOD_Type: DWORD, 184 IOD_Alloc_Base: DWORDLONG, 185 IOD_Alloc_End: DWORDLONG, 186 IOD_DesFlags: DWORD, 187 }} 188 pub type PIO_DES = *mut IO_DES; 189 STRUCT!{#[repr(packed)] struct IO_RESOURCE { 190 IO_Header: IO_DES, 191 IO_Data: [IO_RANGE; ANYSIZE_ARRAY], 192 }} 193 pub type PIO_RESOURCE = *mut IO_RESOURCE; 194 pub const mDD_Width: ULONG = 0x3; 195 pub const fDD_BYTE: ULONG = 0x0; 196 pub const fDD_WORD: ULONG = 0x1; 197 pub const fDD_DWORD: ULONG = 0x2; 198 pub const fDD_BYTE_AND_WORD: ULONG = 0x3; 199 pub const mDD_BusMaster: ULONG = 0x4; 200 pub const fDD_NoBusMaster: ULONG = 0x0; 201 pub const fDD_BusMaster: ULONG = 0x4; 202 pub const mDD_Type: ULONG = 0x18; 203 pub const fDD_TypeStandard: ULONG = 0x00; 204 pub const fDD_TypeA: ULONG = 0x08; 205 pub const fDD_TypeB: ULONG = 0x10; 206 pub const fDD_TypeF: ULONG = 0x18; 207 STRUCT!{#[repr(packed)] struct DMA_RANGE { 208 DR_Min: ULONG, 209 DR_Max: ULONG, 210 DR_Flags: ULONG, 211 }} 212 pub type PDMA_RANGE = *mut DMA_RANGE; 213 STRUCT!{#[repr(packed)] struct DMA_DES { 214 DD_Count: DWORD, 215 DD_Type: DWORD, 216 DD_Flags: DWORD, 217 DD_Alloc_Chan: ULONG, 218 }} 219 pub type PDMA_DES = *mut DMA_DES; 220 STRUCT!{#[repr(packed)] struct DMA_RESOURCE { 221 DMA_Header: DMA_DES, 222 DMA_Data: [DMA_RANGE; ANYSIZE_ARRAY], 223 }} 224 pub type PDMA_RESOURCE = *mut DMA_RESOURCE; 225 pub const mIRQD_Share: ULONG = 0x1; 226 pub const fIRQD_Exclusive: ULONG = 0x0; 227 pub const fIRQD_Share: ULONG = 0x1; 228 pub const fIRQD_Share_Bit: ULONG = 0; 229 pub const fIRQD_Level_Bit: ULONG = 1; 230 pub const mIRQD_Edge_Level: ULONG = 0x2; 231 pub const fIRQD_Level: ULONG = 0x0; 232 pub const fIRQD_Edge: ULONG = 0x2; 233 STRUCT!{#[repr(packed)] struct IRQ_RANGE { 234 IRQR_Min: ULONG, 235 IRQR_Max: ULONG, 236 IRQR_Flags: ULONG, 237 }} 238 pub type PIRQ_RANGE = *mut IRQ_RANGE; 239 STRUCT!{#[repr(packed)] struct IRQ_DES_32 { 240 IRQD_Count: DWORD, 241 IRQD_Type: DWORD, 242 IRQD_Flags: DWORD, 243 IRQD_Alloc_Num: ULONG, 244 IRQD_Affinity: ULONG32, 245 }} 246 pub type PIRQ_DES_32 = *mut IRQ_DES_32; 247 STRUCT!{#[repr(packed)] struct IRQ_DES_64 { 248 IRQD_Count: DWORD, 249 IRQD_Type: DWORD, 250 IRQD_Flags: DWORD, 251 IRQD_Alloc_Num: ULONG, 252 IRQD_Affinity: ULONG64, 253 }} 254 pub type PIRQ_DES_64 = *mut IRQ_DES_64; 255 STRUCT!{#[repr(packed)] struct IRQ_RESOURCE_32 { 256 IRQ_Header: IRQ_DES_32, 257 IRQ_Data: [IRQ_RANGE; ANYSIZE_ARRAY], 258 }} 259 pub type PIRQ_RESOURCE_32 = *mut IRQ_RESOURCE_32; 260 STRUCT!{#[repr(packed)] struct IRQ_RESOURCE_64 { 261 IRQ_Header: IRQ_DES_64, 262 IRQ_Data: [IRQ_RANGE; ANYSIZE_ARRAY], 263 }} 264 pub type PIRQ_RESOURCE_64 = *mut IRQ_RESOURCE_64; 265 STRUCT!{#[repr(packed)] struct DEVPRIVATE_RANGE { 266 PR_Data1: DWORD, 267 PR_Data2: DWORD, 268 PR_Data3: DWORD, 269 }} 270 pub type PDEVPRIVATE_RANGE = *mut DEVPRIVATE_RANGE; 271 STRUCT!{#[repr(packed)] struct DEVPRIVATE_DES { 272 PD_Count: DWORD, 273 PD_Type: DWORD, 274 PD_Data1: DWORD, 275 PD_Data2: DWORD, 276 PD_Data3: DWORD, 277 PD_Flags: DWORD, 278 }} 279 pub type PDEVPRIVATE_DES = *mut DEVPRIVATE_DES; 280 STRUCT!{#[repr(packed)] struct DEVPRIVATE_RESOURCE { 281 PRV_Header: DEVPRIVATE_DES, 282 PRV_Data: [DEVPRIVATE_RANGE; ANYSIZE_ARRAY], 283 }} 284 pub type PDEVPRIVATE_RESOURCE = *mut DEVPRIVATE_RESOURCE; 285 STRUCT!{#[repr(packed)] struct CS_DES { 286 CSD_SignatureLength: DWORD, 287 CSD_LegacyDataOffset: DWORD, 288 CSD_LegacyDataSize: DWORD, 289 CSD_Flags: DWORD, 290 CSD_ClassGuid: GUID, 291 CSD_Signature: [BYTE; ANYSIZE_ARRAY], 292 }} 293 pub type PCS_DES = *mut CS_DES; 294 STRUCT!{#[repr(packed)] struct CS_RESOURCE { 295 CS_Header: CS_DES, 296 }} 297 pub type PCS_RESOURCE = *mut CS_RESOURCE; 298 pub const mPCD_IO_8_16: DWORD = 0x1; 299 pub const fPCD_IO_8: DWORD = 0x0; 300 pub const fPCD_IO_16: DWORD = 0x1; 301 pub const mPCD_MEM_8_16: DWORD = 0x2; 302 pub const fPCD_MEM_8: DWORD = 0x0; 303 pub const fPCD_MEM_16: DWORD = 0x2; 304 pub const mPCD_MEM_A_C: DWORD = 0xC; 305 pub const fPCD_MEM1_A: DWORD = 0x4; 306 pub const fPCD_MEM2_A: DWORD = 0x8; 307 pub const fPCD_IO_ZW_8: DWORD = 0x10; 308 pub const fPCD_IO_SRC_16: DWORD = 0x20; 309 pub const fPCD_IO_WS_16: DWORD = 0x40; 310 pub const mPCD_MEM_WS: DWORD = 0x300; 311 pub const fPCD_MEM_WS_ONE: DWORD = 0x100; 312 pub const fPCD_MEM_WS_TWO: DWORD = 0x200; 313 pub const fPCD_MEM_WS_THREE: DWORD = 0x300; 314 pub const fPCD_MEM_A: DWORD = 0x4; 315 pub const fPCD_ATTRIBUTES_PER_WINDOW: DWORD = 0x8000; 316 pub const fPCD_IO1_16: DWORD = 0x00010000; 317 pub const fPCD_IO1_ZW_8: DWORD = 0x00020000; 318 pub const fPCD_IO1_SRC_16: DWORD = 0x00040000; 319 pub const fPCD_IO1_WS_16: DWORD = 0x00080000; 320 pub const fPCD_IO2_16: DWORD = 0x00100000; 321 pub const fPCD_IO2_ZW_8: DWORD = 0x00200000; 322 pub const fPCD_IO2_SRC_16: DWORD = 0x00400000; 323 pub const fPCD_IO2_WS_16: DWORD = 0x00800000; 324 pub const mPCD_MEM1_WS: DWORD = 0x03000000; 325 pub const fPCD_MEM1_WS_TWO: DWORD = 0x02000000; 326 pub const fPCD_MEM1_WS_THREE: DWORD = 0x03000000; 327 pub const fPCD_MEM1_16: DWORD = 0x04000000; 328 pub const mPCD_MEM2_WS: DWORD = 0x30000000; 329 pub const fPCD_MEM2_WS_ONE: DWORD = 0x10000000; 330 pub const fPCD_MEM2_WS_TWO: DWORD = 0x20000000; 331 pub const fPCD_MEM2_WS_THREE: DWORD = 0x30000000; 332 pub const fPCD_MEM2_16: DWORD = 0x40000000; 333 pub const PCD_MAX_MEMORY: usize = 2; 334 pub const PCD_MAX_IO: usize = 2; 335 STRUCT!{#[repr(packed)] struct PCCARD_DES { 336 PCD_Count: DWORD, 337 PCD_Type: DWORD, 338 PCD_Flags: DWORD, 339 PCD_ConfigIndex: BYTE, 340 PCD_Reserved: [BYTE; 3], 341 PCD_MemoryCardBase1: DWORD, 342 PCD_MemoryCardBase2: DWORD, 343 PCD_MemoryCardBase: [DWORD; PCD_MAX_MEMORY], 344 PCD_MemoryFlags: [WORD; PCD_MAX_MEMORY], 345 PCD_IoFlags: [BYTE; PCD_MAX_IO], 346 }} 347 pub type PPCCARD_DES = *mut PCCARD_DES; 348 STRUCT!{#[repr(packed)] struct PCCARD_RESOURCE { 349 PcCard_Header: PCCARD_DES, 350 }} 351 pub type PPCCARD_RESOURCE = *mut PCCARD_RESOURCE; 352 pub const mPMF_AUDIO_ENABLE: DWORD = 0x8; 353 pub const fPMF_AUDIO_ENABLE: DWORD = 0x8; 354 STRUCT!{#[repr(packed)] struct MFCARD_DES { 355 PMF_Count: DWORD, 356 PMF_Type: DWORD, 357 PMF_Flags: DWORD, 358 PMF_ConfigOptions: BYTE, 359 PMF_IoResourceIndex: BYTE, 360 PMF_Reserved: [BYTE; 2], 361 PMF_ConfigRegisterBase: DWORD, 362 }} 363 pub type PMFCARD_DES = *mut MFCARD_DES; 364 STRUCT!{#[repr(packed)] struct MFCARD_RESOURCE { 365 MfCard_Header: MFCARD_DES, 366 }} 367 pub type PMFCARD_RESOURCE = *mut MFCARD_RESOURCE; 368 STRUCT!{#[repr(packed)] struct BUSNUMBER_RANGE { 369 BUSR_Min: ULONG, 370 BUSR_Max: ULONG, 371 BUSR_nBusNumbers: ULONG, 372 BUSR_Flags: ULONG, 373 }} 374 pub type PBUSNUMBER_RANGE = *mut BUSNUMBER_RANGE; 375 STRUCT!{#[repr(packed)] struct BUSNUMBER_DES { 376 BUSD_Count: DWORD, 377 BUSD_Type: DWORD, 378 BUSD_Flags: DWORD, 379 BUSD_Alloc_Base: ULONG, 380 BUSD_Alloc_End: ULONG, 381 }} 382 pub type PBUSNUMBER_DES = *mut BUSNUMBER_DES; 383 STRUCT!{#[repr(packed)] struct BUSNUMBER_RESOURCE { 384 BusNumber_Header: BUSNUMBER_DES, 385 BusNumber_Data: [BUSNUMBER_RANGE; ANYSIZE_ARRAY], 386 }} 387 pub type PBUSNUMBER_RESOURCE = *mut BUSNUMBER_RESOURCE; 388 STRUCT!{#[repr(packed)] struct CONNECTION_DES { 389 COND_Type: DWORD, 390 COND_Flags: DWORD, 391 COND_Class: BYTE, 392 COND_ClassType: BYTE, 393 COND_Reserved1: BYTE, 394 COND_Reserved2: BYTE, 395 COND_Id: LARGE_INTEGER, 396 }} 397 pub type PCONNECTION_DES = *mut CONNECTION_DES; 398 STRUCT!{#[repr(packed)] struct CONNECTION_RESOURCE { 399 Connection_Header: CONNECTION_DES, 400 }} 401 pub type PCONNECTION_RESOURCE = *mut CONNECTION_RESOURCE; 402 pub const CM_HWPI_NOT_DOCKABLE: DWORD = 0x00000000; 403 pub const CM_HWPI_UNDOCKED: DWORD = 0x00000001; 404 pub const CM_HWPI_DOCKED: DWORD = 0x00000002; 405 STRUCT!{#[repr(packed)] struct HWPROFILEINFO_A { 406 HWPI_ulHWProfile: ULONG, 407 HWPI_szFriendlyName: [CHAR; MAX_PROFILE_LEN], 408 HWPI_dwFlags: DWORD, 409 }} 410 pub type PHWPROFILEINFO_A = *mut HWPROFILEINFO_A; 411 STRUCT!{#[repr(packed)] struct HWPROFILEINFO_W { 412 HWPI_ulHWProfile: ULONG, 413 HWPI_szFriendlyName: [WCHAR; MAX_PROFILE_LEN], 414 HWPI_dwFlags: DWORD, 415 }} 416 pub type PHWPROFILEINFO_W = *mut HWPROFILEINFO_W; 417 pub const ResType_All: RESOURCEID = 0x00000000; 418 pub const ResType_None: RESOURCEID = 0x00000000; 419 pub const ResType_Mem: RESOURCEID = 0x00000001; 420 pub const ResType_IO: RESOURCEID = 0x00000002; 421 pub const ResType_DMA: RESOURCEID = 0x00000003; 422 pub const ResType_IRQ: RESOURCEID = 0x00000004; 423 pub const ResType_DoNotUse: RESOURCEID = 0x00000005; 424 pub const ResType_BusNumber: RESOURCEID = 0x00000006; 425 pub const ResType_MemLarge: RESOURCEID = 0x00000007; 426 pub const ResType_MAX: RESOURCEID = 0x00000007; 427 pub const ResType_Ignored_Bit: RESOURCEID = 0x00008000; 428 pub const ResType_ClassSpecific: RESOURCEID = 0x0000FFFF; 429 pub const ResType_Reserved: RESOURCEID = 0x00008000; 430 pub const ResType_DevicePrivate: RESOURCEID = 0x00008001; 431 pub const ResType_PcCardConfig: RESOURCEID = 0x00008002; 432 pub const ResType_MfCardConfig: RESOURCEID = 0x00008003; 433 pub const ResType_Connection: RESOURCEID = 0x00008004; 434 pub const CM_ADD_RANGE_ADDIFCONFLICT: ULONG = 0x00000000; 435 pub const CM_ADD_RANGE_DONOTADDIFCONFLICT: ULONG = 0x00000001; 436 pub const CM_ADD_RANGE_BITS: ULONG = 0x00000001; 437 pub const BASIC_LOG_CONF: ULONG = 0x00000000; 438 pub const FILTERED_LOG_CONF: ULONG = 0x00000001; 439 pub const ALLOC_LOG_CONF: ULONG = 0x00000002; 440 pub const BOOT_LOG_CONF: ULONG = 0x00000003; 441 pub const FORCED_LOG_CONF: ULONG = 0x00000004; 442 pub const OVERRIDE_LOG_CONF: ULONG = 0x00000005; 443 pub const NUM_LOG_CONF: ULONG = 0x00000006; 444 pub const LOG_CONF_BITS: ULONG = 0x00000007; 445 pub const PRIORITY_EQUAL_FIRST: ULONG = 0x00000008; 446 pub const PRIORITY_EQUAL_LAST: ULONG = 0x00000000; 447 pub const PRIORITY_BIT: ULONG = 0x00000008; 448 pub const RegDisposition_OpenAlways: REGDISPOSITION = 0x00000000; 449 pub const RegDisposition_OpenExisting: REGDISPOSITION = 0x00000001; 450 pub const RegDisposition_Bits: REGDISPOSITION = 0x00000001; 451 pub const CM_ADD_ID_HARDWARE: ULONG = 0x00000000; 452 pub const CM_ADD_ID_COMPATIBLE: ULONG = 0x00000001; 453 pub const CM_ADD_ID_BITS: ULONG = 0x00000001; 454 pub const CM_CREATE_DEVNODE_NORMAL: ULONG = 0x00000000; 455 pub const CM_CREATE_DEVNODE_NO_WAIT_INSTALL: ULONG = 0x00000001; 456 pub const CM_CREATE_DEVNODE_PHANTOM: ULONG = 0x00000002; 457 pub const CM_CREATE_DEVNODE_GENERATE_ID: ULONG = 0x00000004; 458 pub const CM_CREATE_DEVNODE_DO_NOT_INSTALL: ULONG = 0x00000008; 459 pub const CM_CREATE_DEVNODE_BITS: ULONG = 0x0000000F; 460 pub const CM_CREATE_DEVINST_NORMAL: ULONG = CM_CREATE_DEVNODE_NORMAL; 461 pub const CM_CREATE_DEVINST_NO_WAIT_INSTALL: ULONG = CM_CREATE_DEVNODE_NO_WAIT_INSTALL; 462 pub const CM_CREATE_DEVINST_PHANTOM: ULONG = CM_CREATE_DEVNODE_PHANTOM; 463 pub const CM_CREATE_DEVINST_GENERATE_ID: ULONG = CM_CREATE_DEVNODE_GENERATE_ID; 464 pub const CM_CREATE_DEVINST_DO_NOT_INSTALL: ULONG = CM_CREATE_DEVNODE_DO_NOT_INSTALL; 465 pub const CM_CREATE_DEVINST_BITS: ULONG = CM_CREATE_DEVNODE_BITS; 466 pub const CM_DELETE_CLASS_ONLY: ULONG = 0x00000000; 467 pub const CM_DELETE_CLASS_SUBKEYS: ULONG = 0x00000001; 468 pub const CM_DELETE_CLASS_INTERFACE: ULONG = 0x00000002; 469 pub const CM_DELETE_CLASS_BITS: ULONG = 0x00000003; 470 pub const CM_ENUMERATE_CLASSES_INSTALLER: ULONG = 0x00000000; 471 pub const CM_ENUMERATE_CLASSES_INTERFACE: ULONG = 0x00000001; 472 pub const CM_ENUMERATE_CLASSES_BITS: ULONG = 0x00000001; 473 pub const CM_DETECT_NEW_PROFILE: ULONG = 0x00000001; 474 pub const CM_DETECT_CRASHED: ULONG = 0x00000002; 475 pub const CM_DETECT_HWPROF_FIRST_BOOT: ULONG = 0x00000004; 476 pub const CM_DETECT_RUN: ULONG = 0x80000000; 477 pub const CM_DETECT_BITS: ULONG = 0x80000007; 478 pub const CM_DISABLE_POLITE: ULONG = 0x00000000; 479 pub const CM_DISABLE_ABSOLUTE: ULONG = 0x00000001; 480 pub const CM_DISABLE_HARDWARE: ULONG = 0x00000002; 481 pub const CM_DISABLE_UI_NOT_OK: ULONG = 0x00000004; 482 pub const CM_DISABLE_BITS: ULONG = 0x00000007; 483 pub const CM_GETIDLIST_FILTER_NONE: ULONG = 0x00000000; 484 pub const CM_GETIDLIST_FILTER_ENUMERATOR: ULONG = 0x00000001; 485 pub const CM_GETIDLIST_FILTER_SERVICE: ULONG = 0x00000002; 486 pub const CM_GETIDLIST_FILTER_EJECTRELATIONS: ULONG = 0x00000004; 487 pub const CM_GETIDLIST_FILTER_REMOVALRELATIONS: ULONG = 0x00000008; 488 pub const CM_GETIDLIST_FILTER_POWERRELATIONS: ULONG = 0x00000010; 489 pub const CM_GETIDLIST_FILTER_BUSRELATIONS: ULONG = 0x00000020; 490 pub const CM_GETIDLIST_DONOTGENERATE: ULONG = 0x10000040; 491 pub const CM_GETIDLIST_FILTER_TRANSPORTRELATIONS: ULONG = 0x00000080; 492 pub const CM_GETIDLIST_FILTER_PRESENT: ULONG = 0x00000100; 493 pub const CM_GETIDLIST_FILTER_CLASS: ULONG = 0x00000200; 494 pub const CM_GETIDLIST_FILTER_BITS: ULONG = 0x100003FF; 495 pub const CM_GET_DEVICE_INTERFACE_LIST_PRESENT: ULONG = 0x00000000; 496 pub const CM_GET_DEVICE_INTERFACE_LIST_ALL_DEVICES: ULONG = 0x00000001; 497 pub const CM_GET_DEVICE_INTERFACE_LIST_BITS: ULONG = 0x00000001; 498 pub const CM_DRP_DEVICEDESC: ULONG = 0x00000001; 499 pub const CM_DRP_HARDWAREID: ULONG = 0x00000002; 500 pub const CM_DRP_COMPATIBLEIDS: ULONG = 0x00000003; 501 pub const CM_DRP_UNUSED0: ULONG = 0x00000004; 502 pub const CM_DRP_SERVICE: ULONG = 0x00000005; 503 pub const CM_DRP_UNUSED1: ULONG = 0x00000006; 504 pub const CM_DRP_UNUSED2: ULONG = 0x00000007; 505 pub const CM_DRP_CLASS: ULONG = 0x00000008; 506 pub const CM_DRP_CLASSGUID: ULONG = 0x00000009; 507 pub const CM_DRP_DRIVER: ULONG = 0x0000000A; 508 pub const CM_DRP_CONFIGFLAGS: ULONG = 0x0000000B; 509 pub const CM_DRP_MFG: ULONG = 0x0000000C; 510 pub const CM_DRP_FRIENDLYNAME: ULONG = 0x0000000D; 511 pub const CM_DRP_LOCATION_INFORMATION: ULONG = 0x0000000E; 512 pub const CM_DRP_PHYSICAL_DEVICE_OBJECT_NAME: ULONG = 0x0000000F; 513 pub const CM_DRP_CAPABILITIES: ULONG = 0x00000010; 514 pub const CM_DRP_UI_NUMBER: ULONG = 0x00000011; 515 pub const CM_DRP_UPPERFILTERS: ULONG = 0x00000012; 516 pub const CM_CRP_UPPERFILTERS: ULONG = CM_DRP_UPPERFILTERS; 517 pub const CM_DRP_LOWERFILTERS: ULONG = 0x00000013; 518 pub const CM_CRP_LOWERFILTERS: ULONG = CM_DRP_LOWERFILTERS; 519 pub const CM_DRP_BUSTYPEGUID: ULONG = 0x00000014; 520 pub const CM_DRP_LEGACYBUSTYPE: ULONG = 0x00000015; 521 pub const CM_DRP_BUSNUMBER: ULONG = 0x00000016; 522 pub const CM_DRP_ENUMERATOR_NAME: ULONG = 0x00000017; 523 pub const CM_DRP_SECURITY: ULONG = 0x00000018; 524 pub const CM_CRP_SECURITY: ULONG = CM_DRP_SECURITY; 525 pub const CM_DRP_SECURITY_SDS: ULONG = 0x00000019; 526 pub const CM_CRP_SECURITY_SDS: ULONG = CM_DRP_SECURITY_SDS; 527 pub const CM_DRP_DEVTYPE: ULONG = 0x0000001A; 528 pub const CM_CRP_DEVTYPE: ULONG = CM_DRP_DEVTYPE; 529 pub const CM_DRP_EXCLUSIVE: ULONG = 0x0000001B; 530 pub const CM_CRP_EXCLUSIVE: ULONG = CM_DRP_EXCLUSIVE; 531 pub const CM_DRP_CHARACTERISTICS: ULONG = 0x0000001C; 532 pub const CM_CRP_CHARACTERISTICS: ULONG = CM_DRP_CHARACTERISTICS; 533 pub const CM_DRP_ADDRESS: ULONG = 0x0000001D; 534 pub const CM_DRP_UI_NUMBER_DESC_FORMAT: ULONG = 0x0000001E; 535 pub const CM_DRP_DEVICE_POWER_DATA: ULONG = 0x0000001F; 536 pub const CM_DRP_REMOVAL_POLICY: ULONG = 0x00000020; 537 pub const CM_DRP_REMOVAL_POLICY_HW_DEFAULT: ULONG = 0x00000021; 538 pub const CM_DRP_REMOVAL_POLICY_OVERRIDE: ULONG = 0x00000022; 539 pub const CM_DRP_INSTALL_STATE: ULONG = 0x00000023; 540 pub const CM_DRP_LOCATION_PATHS: ULONG = 0x00000024; 541 pub const CM_DRP_BASE_CONTAINERID: ULONG = 0x00000025; 542 pub const CM_DRP_MIN: ULONG = 0x00000001; 543 pub const CM_CRP_MIN: ULONG = CM_DRP_MIN; 544 pub const CM_DRP_MAX: ULONG = 0x00000025; 545 pub const CM_CRP_MAX: ULONG = CM_DRP_MAX; 546 pub const CM_DEVCAP_LOCKSUPPORTED: ULONG = 0x00000001; 547 pub const CM_DEVCAP_EJECTSUPPORTED: ULONG = 0x00000002; 548 pub const CM_DEVCAP_REMOVABLE: ULONG = 0x00000004; 549 pub const CM_DEVCAP_DOCKDEVICE: ULONG = 0x00000008; 550 pub const CM_DEVCAP_UNIQUEID: ULONG = 0x00000010; 551 pub const CM_DEVCAP_SILENTINSTALL: ULONG = 0x00000020; 552 pub const CM_DEVCAP_RAWDEVICEOK: ULONG = 0x00000040; 553 pub const CM_DEVCAP_SURPRISEREMOVALOK: ULONG = 0x00000080; 554 pub const CM_DEVCAP_HARDWAREDISABLED: ULONG = 0x00000100; 555 pub const CM_DEVCAP_NONDYNAMIC: ULONG = 0x00000200; 556 pub const CM_REMOVAL_POLICY_EXPECT_NO_REMOVAL: ULONG = 1; 557 pub const CM_REMOVAL_POLICY_EXPECT_ORDERLY_REMOVAL: ULONG = 2; 558 pub const CM_REMOVAL_POLICY_EXPECT_SURPRISE_REMOVAL: ULONG = 3; 559 pub const CM_INSTALL_STATE_INSTALLED: ULONG = 0; 560 pub const CM_INSTALL_STATE_NEEDS_REINSTALL: ULONG = 1; 561 pub const CM_INSTALL_STATE_FAILED_INSTALL: ULONG = 2; 562 pub const CM_INSTALL_STATE_FINISH_INSTALL: ULONG = 3; 563 pub const CM_LOCATE_DEVNODE_NORMAL: ULONG = 0x00000000; 564 pub const CM_LOCATE_DEVNODE_PHANTOM: ULONG = 0x00000001; 565 pub const CM_LOCATE_DEVNODE_CANCELREMOVE: ULONG = 0x00000002; 566 pub const CM_LOCATE_DEVNODE_NOVALIDATION: ULONG = 0x00000004; 567 pub const CM_LOCATE_DEVNODE_BITS: ULONG = 0x00000007; 568 pub const CM_LOCATE_DEVINST_NORMAL: ULONG = CM_LOCATE_DEVNODE_NORMAL; 569 pub const CM_LOCATE_DEVINST_PHANTOM: ULONG = CM_LOCATE_DEVNODE_PHANTOM; 570 pub const CM_LOCATE_DEVINST_CANCELREMOVE: ULONG = CM_LOCATE_DEVNODE_CANCELREMOVE; 571 pub const CM_LOCATE_DEVINST_NOVALIDATION: ULONG = CM_LOCATE_DEVNODE_NOVALIDATION; 572 pub const CM_LOCATE_DEVINST_BITS: ULONG = CM_LOCATE_DEVNODE_BITS; 573 pub const CM_OPEN_CLASS_KEY_INSTALLER: ULONG = 0x00000000; 574 pub const CM_OPEN_CLASS_KEY_INTERFACE: ULONG = 0x00000001; 575 pub const CM_OPEN_CLASS_KEY_BITS: ULONG = 0x00000001; 576 pub const CM_REMOVE_UI_OK: ULONG = 0x00000000; 577 pub const CM_REMOVE_UI_NOT_OK: ULONG = 0x00000001; 578 pub const CM_REMOVE_NO_RESTART: ULONG = 0x00000002; 579 pub const CM_REMOVE_BITS: ULONG = 0x00000003; 580 pub const CM_QUERY_REMOVE_UI_OK: ULONG = CM_REMOVE_UI_OK; 581 pub const CM_QUERY_REMOVE_UI_NOT_OK: ULONG = CM_REMOVE_UI_NOT_OK; 582 pub const CM_QUERY_REMOVE_BITS: ULONG = CM_QUERY_REMOVE_UI_OK | CM_QUERY_REMOVE_UI_NOT_OK; 583 pub const CM_REENUMERATE_NORMAL: ULONG = 0x00000000; 584 pub const CM_REENUMERATE_SYNCHRONOUS: ULONG = 0x00000001; 585 pub const CM_REENUMERATE_RETRY_INSTALLATION: ULONG = 0x00000002; 586 pub const CM_REENUMERATE_ASYNCHRONOUS: ULONG = 0x00000004; 587 pub const CM_REENUMERATE_BITS: ULONG = 0x00000007; 588 pub const CM_REGISTER_DEVICE_DRIVER_STATIC: ULONG = 0x00000000; 589 pub const CM_REGISTER_DEVICE_DRIVER_DISABLEABLE: ULONG = 0x00000001; 590 pub const CM_REGISTER_DEVICE_DRIVER_REMOVABLE: ULONG = 0x00000002; 591 pub const CM_REGISTER_DEVICE_DRIVER_BITS: ULONG = 0x00000003; 592 pub const CM_REGISTRY_HARDWARE: ULONG = 0x00000000; 593 pub const CM_REGISTRY_SOFTWARE: ULONG = 0x00000001; 594 pub const CM_REGISTRY_USER: ULONG = 0x00000100; 595 pub const CM_REGISTRY_CONFIG: ULONG = 0x00000200; 596 pub const CM_REGISTRY_BITS: ULONG = 0x00000301; 597 pub const CM_SET_DEVNODE_PROBLEM_NORMAL: ULONG = 0x00000000; 598 pub const CM_SET_DEVNODE_PROBLEM_OVERRIDE: ULONG = 0x00000001; 599 pub const CM_SET_DEVNODE_PROBLEM_BITS: ULONG = 0x00000001; 600 pub const CM_SET_DEVINST_PROBLEM_NORMAL: ULONG = CM_SET_DEVNODE_PROBLEM_NORMAL; 601 pub const CM_SET_DEVINST_PROBLEM_OVERRIDE: ULONG = CM_SET_DEVNODE_PROBLEM_OVERRIDE; 602 pub const CM_SET_DEVINST_PROBLEM_BITS: ULONG = CM_SET_DEVNODE_PROBLEM_BITS; 603 pub const CM_SET_HW_PROF_FLAGS_UI_NOT_OK: ULONG = 0x00000001; 604 pub const CM_SET_HW_PROF_FLAGS_BITS: ULONG = 0x00000001; 605 pub const CM_SETUP_DEVNODE_READY: ULONG = 0x00000000; 606 pub const CM_SETUP_DEVINST_READY: ULONG = CM_SETUP_DEVNODE_READY; 607 pub const CM_SETUP_DOWNLOAD: ULONG = 0x00000001; 608 pub const CM_SETUP_WRITE_LOG_CONFS: ULONG = 0x00000002; 609 pub const CM_SETUP_PROP_CHANGE: ULONG = 0x00000003; 610 pub const CM_SETUP_DEVNODE_RESET: ULONG = 0x00000004; 611 pub const CM_SETUP_DEVINST_RESET: ULONG = CM_SETUP_DEVNODE_RESET; 612 pub const CM_SETUP_DEVNODE_CONFIG: ULONG = 0x00000005; 613 pub const CM_SETUP_DEVINST_CONFIG: ULONG = CM_SETUP_DEVNODE_CONFIG; 614 pub const CM_SETUP_DEVNODE_CONFIG_CLASS: ULONG = 0x00000006; 615 pub const CM_SETUP_DEVINST_CONFIG_CLASS: ULONG = CM_SETUP_DEVNODE_CONFIG_CLASS; 616 pub const CM_SETUP_DEVNODE_CONFIG_EXTENSIONS: ULONG = 0x00000007; 617 pub const CM_SETUP_DEVINST_CONFIG_EXTENSIONS: ULONG = CM_SETUP_DEVNODE_CONFIG_EXTENSIONS; 618 pub const CM_SETUP_BITS: ULONG = 0x00000007; 619 pub const CM_QUERY_ARBITRATOR_RAW: ULONG = 0x00000000; 620 pub const CM_QUERY_ARBITRATOR_TRANSLATED: ULONG = 0x00000001; 621 pub const CM_QUERY_ARBITRATOR_BITS: ULONG = 0x00000001; 622 pub const CM_CUSTOMDEVPROP_MERGE_MULTISZ: ULONG = 0x00000001; 623 pub const CM_CUSTOMDEVPROP_BITS: ULONG = 0x00000001; 624 pub const CM_NAME_ATTRIBUTE_NAME_RETRIEVED_FROM_DEVICE: ULONG = 0x1; 625 pub const CM_NAME_ATTRIBUTE_USER_ASSIGNED_NAME: ULONG = 0x2; 626 pub const CM_CLASS_PROPERTY_INSTALLER: ULONG = 0x00000000; 627 pub const CM_CLASS_PROPERTY_INTERFACE: ULONG = 0x00000001; 628 pub const CM_CLASS_PROPERTY_BITS: ULONG = 0x00000001; 629 DECLARE_HANDLE!{HCMNOTIFICATION, HCMNOTIFICATION__} 630 pub type PHCMNOTIFICATION = *mut HCMNOTIFICATION; 631 pub const CM_NOTIFY_FILTER_FLAG_ALL_INTERFACE_CLASSES: ULONG = 0x00000001; 632 pub const CM_NOTIFY_FILTER_FLAG_ALL_DEVICE_INSTANCES: ULONG = 0x00000002; 633 pub const CM_NOTIFY_FILTER_VALID_FLAGS: ULONG = CM_NOTIFY_FILTER_FLAG_ALL_INTERFACE_CLASSES 634 | CM_NOTIFY_FILTER_FLAG_ALL_DEVICE_INSTANCES; 635 ENUM!{enum CM_NOTIFY_FILTER_TYPE { 636 CM_NOTIFY_FILTER_TYPE_DEVICEINTERFACE = 0, 637 CM_NOTIFY_FILTER_TYPE_DEVICEHANDLE, 638 CM_NOTIFY_FILTER_TYPE_DEVICEINSTANCE, 639 CM_NOTIFY_FILTER_TYPE_MAX, 640 }} 641 pub type PCM_NOTIFY_FILTER_TYPE = *mut CM_NOTIFY_FILTER_TYPE; 642 STRUCT!{struct CM_NOTIFY_FILTER_DeviceInterface { 643 ClassGuid: GUID, 644 }} 645 STRUCT!{struct CM_NOTIFY_FILTER_DeviceHandle { 646 hTarget: HANDLE, 647 }} 648 STRUCT!{struct CM_NOTIFY_FILTER_DeviceInstance { 649 InstanceId: [WCHAR; MAX_DEVICE_ID_LEN], 650 }} 651 UNION!{union CM_NOTIFY_FILTER_u { 652 [u32; 100] [u64; 50], 653 DeviceInterface DeviceInterface_mut: CM_NOTIFY_FILTER_DeviceInterface, 654 DeviceHandle DeviceHandle_mut: CM_NOTIFY_FILTER_DeviceHandle, 655 DeviceInstance DeviceInstance_mut: CM_NOTIFY_FILTER_DeviceInstance, 656 }} 657 STRUCT!{struct CM_NOTIFY_FILTER { 658 cbSize: DWORD, 659 Flags: DWORD, 660 FilterType: CM_NOTIFY_FILTER_TYPE, 661 Reserved: DWORD, 662 u: CM_NOTIFY_FILTER_u, 663 }} 664 pub type PCM_NOTIFY_FILTER = *mut CM_NOTIFY_FILTER; 665 ENUM!{enum CM_NOTIFY_ACTION { 666 CM_NOTIFY_ACTION_DEVICEINTERFACEARRIVAL = 0, 667 CM_NOTIFY_ACTION_DEVICEINTERFACEREMOVAL, 668 CM_NOTIFY_ACTION_DEVICEQUERYREMOVE, 669 CM_NOTIFY_ACTION_DEVICEQUERYREMOVEFAILED, 670 CM_NOTIFY_ACTION_DEVICEREMOVEPENDING, 671 CM_NOTIFY_ACTION_DEVICEREMOVECOMPLETE, 672 CM_NOTIFY_ACTION_DEVICECUSTOMEVENT, 673 CM_NOTIFY_ACTION_DEVICEINSTANCEENUMERATED, 674 CM_NOTIFY_ACTION_DEVICEINSTANCESTARTED, 675 CM_NOTIFY_ACTION_DEVICEINSTANCEREMOVED, 676 CM_NOTIFY_ACTION_MAX, 677 }} 678 pub type PCM_NOTIFY_ACTION = *mut CM_NOTIFY_ACTION; 679 STRUCT!{struct CM_NOTIFY_EVENT_DATA_DeviceInterface { 680 ClassGuid: GUID, 681 SymbolicLink: [WCHAR; ANYSIZE_ARRAY], 682 }} 683 STRUCT!{struct CM_NOTIFY_EVENT_DATA_DeviceHandle { 684 EventGuid: GUID, 685 NameOffset: LONG, 686 DataSize: DWORD, 687 Data: [BYTE; ANYSIZE_ARRAY], 688 }} 689 STRUCT!{struct CM_NOTIFY_EVENT_DATA_DeviceInstance { 690 InstanceId: [WCHAR; ANYSIZE_ARRAY], 691 }} 692 UNION!{union CM_NOTIFY_EVENT_DATA_u { 693 [u32; 7], 694 DeviceInterface DeviceInterface_mut: CM_NOTIFY_EVENT_DATA_DeviceInterface, 695 DeviceHandle DeviceHandle_mut: CM_NOTIFY_EVENT_DATA_DeviceHandle, 696 DeviceInstance DeviceInstance_mut: CM_NOTIFY_EVENT_DATA_DeviceInstance, 697 }} 698 STRUCT!{struct CM_NOTIFY_EVENT_DATA { 699 FilterType: CM_NOTIFY_FILTER_TYPE, 700 Reserved: DWORD, 701 u: CM_NOTIFY_EVENT_DATA_u, 702 }} 703 pub type PCM_NOTIFY_EVENT_DATA = *mut CM_NOTIFY_EVENT_DATA; 704 FN!{stdcall PCM_NOTIFY_CALLBACK( 705 hNotify: HCMNOTIFICATION, 706 Context: PVOID, 707 Action: CM_NOTIFY_ACTION, 708 EventData: PCM_NOTIFY_EVENT_DATA, 709 EventDataSize: DWORD, 710 ) -> DWORD} 711 extern "system" { CM_Add_Empty_Log_Conf( plcLogConf: PLOG_CONF, dnDevInst: DEVINST, Priority: PRIORITY, ulFlags: ULONG, ) -> CONFIGRET712 pub fn CM_Add_Empty_Log_Conf( 713 plcLogConf: PLOG_CONF, 714 dnDevInst: DEVINST, 715 Priority: PRIORITY, 716 ulFlags: ULONG, 717 ) -> CONFIGRET; CM_Add_Empty_Log_Conf_Ex( plcLogConf: PLOG_CONF, dnDevInst: DEVINST, Priority: PRIORITY, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET718 pub fn CM_Add_Empty_Log_Conf_Ex( 719 plcLogConf: PLOG_CONF, 720 dnDevInst: DEVINST, 721 Priority: PRIORITY, 722 ulFlags: ULONG, 723 hMachine: HMACHINE, 724 ) -> CONFIGRET; CM_Add_IDA( dnDevInst: DEVINST, pszID: PSTR, ulFlags: ULONG, ) -> CONFIGRET725 pub fn CM_Add_IDA( 726 dnDevInst: DEVINST, 727 pszID: PSTR, 728 ulFlags: ULONG, 729 ) -> CONFIGRET; CM_Add_IDW( dnDevInst: DEVINST, pszID: PWSTR, ulFlags: ULONG, ) -> CONFIGRET730 pub fn CM_Add_IDW( 731 dnDevInst: DEVINST, 732 pszID: PWSTR, 733 ulFlags: ULONG, 734 ) -> CONFIGRET; CM_Add_ID_ExA( dnDevInst: DEVINST, pszID: PSTR, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET735 pub fn CM_Add_ID_ExA( 736 dnDevInst: DEVINST, 737 pszID: PSTR, 738 ulFlags: ULONG, 739 hMachine: HMACHINE, 740 ) -> CONFIGRET; CM_Add_ID_ExW( dnDevInst: DEVINST, pszID: PWSTR, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET741 pub fn CM_Add_ID_ExW( 742 dnDevInst: DEVINST, 743 pszID: PWSTR, 744 ulFlags: ULONG, 745 hMachine: HMACHINE, 746 ) -> CONFIGRET; CM_Add_Range( ullStartValue: DWORDLONG, ullEndValue: DWORDLONG, rlh: RANGE_LIST, ulFlags: ULONG, ) -> CONFIGRET747 pub fn CM_Add_Range( 748 ullStartValue: DWORDLONG, 749 ullEndValue: DWORDLONG, 750 rlh: RANGE_LIST, 751 ulFlags: ULONG, 752 ) -> CONFIGRET; CM_Add_Res_Des( prdResDes: PRES_DES, lcLogConf: LOG_CONF, ResourceID: RESOURCEID, ResourceData: PCVOID, ResourceLen: ULONG, ulFlags: ULONG, ) -> CONFIGRET753 pub fn CM_Add_Res_Des( 754 prdResDes: PRES_DES, 755 lcLogConf: LOG_CONF, 756 ResourceID: RESOURCEID, 757 ResourceData: PCVOID, 758 ResourceLen: ULONG, 759 ulFlags: ULONG, 760 ) -> CONFIGRET; CM_Add_Res_Des_Ex( prdResDes: PRES_DES, lcLogConf: LOG_CONF, ResourceID: RESOURCEID, ResourceData: PCVOID, ResourceLen: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET761 pub fn CM_Add_Res_Des_Ex( 762 prdResDes: PRES_DES, 763 lcLogConf: LOG_CONF, 764 ResourceID: RESOURCEID, 765 ResourceData: PCVOID, 766 ResourceLen: ULONG, 767 ulFlags: ULONG, 768 hMachine: HMACHINE, 769 ) -> CONFIGRET; CM_Connect_MachineA( UNCServerName: PCSTR, phMachine: PHMACHINE, ) -> CONFIGRET770 pub fn CM_Connect_MachineA( 771 UNCServerName: PCSTR, 772 phMachine: PHMACHINE, 773 ) -> CONFIGRET; CM_Connect_MachineW( UNCServerName: PCWSTR, phMachine: PHMACHINE, ) -> CONFIGRET774 pub fn CM_Connect_MachineW( 775 UNCServerName: PCWSTR, 776 phMachine: PHMACHINE, 777 ) -> CONFIGRET; CM_Create_DevNodeA( pdnDevInst: PDEVINST, pDeviceID: DEVINSTID_A, dnParent: DEVINST, ulFlags: ULONG, ) -> CONFIGRET778 pub fn CM_Create_DevNodeA( 779 pdnDevInst: PDEVINST, 780 pDeviceID: DEVINSTID_A, 781 dnParent: DEVINST, 782 ulFlags: ULONG, 783 ) -> CONFIGRET; CM_Create_DevNodeW( pdnDevInst: PDEVINST, pDeviceID: DEVINSTID_W, dnParent: DEVINST, ulFlags: ULONG, ) -> CONFIGRET784 pub fn CM_Create_DevNodeW( 785 pdnDevInst: PDEVINST, 786 pDeviceID: DEVINSTID_W, 787 dnParent: DEVINST, 788 ulFlags: ULONG, 789 ) -> CONFIGRET; CM_Create_DevNode_ExA( pdnDevInst: PDEVINST, pDeviceID: DEVINSTID_A, dnParent: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET790 pub fn CM_Create_DevNode_ExA( 791 pdnDevInst: PDEVINST, 792 pDeviceID: DEVINSTID_A, 793 dnParent: DEVINST, 794 ulFlags: ULONG, 795 hMachine: HMACHINE, 796 ) -> CONFIGRET; CM_Create_DevNode_ExW( pdnDevInst: PDEVINST, pDeviceID: DEVINSTID_W, dnParent: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET797 pub fn CM_Create_DevNode_ExW( 798 pdnDevInst: PDEVINST, 799 pDeviceID: DEVINSTID_W, 800 dnParent: DEVINST, 801 ulFlags: ULONG, 802 hMachine: HMACHINE, 803 ) -> CONFIGRET; CM_Create_Range_List( prlh: PRANGE_LIST, ulFlags: ULONG, ) -> CONFIGRET804 pub fn CM_Create_Range_List( 805 prlh: PRANGE_LIST, 806 ulFlags: ULONG, 807 ) -> CONFIGRET; CM_Delete_Class_Key( ClassGuid: LPGUID, ulFlags: ULONG, ) -> CONFIGRET808 pub fn CM_Delete_Class_Key( 809 ClassGuid: LPGUID, 810 ulFlags: ULONG, 811 ) -> CONFIGRET; CM_Delete_Class_Key_Ex( ClassGuid: LPGUID, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET812 pub fn CM_Delete_Class_Key_Ex( 813 ClassGuid: LPGUID, 814 ulFlags: ULONG, 815 hMachine: HMACHINE, 816 ) -> CONFIGRET; CM_Delete_DevNode_Key( dnDevNode: DEVNODE, ulHardwareProfile: ULONG, ulFlags: ULONG, ) -> CONFIGRET817 pub fn CM_Delete_DevNode_Key( 818 dnDevNode: DEVNODE, 819 ulHardwareProfile: ULONG, 820 ulFlags: ULONG, 821 ) -> CONFIGRET; CM_Delete_DevNode_Key_Ex( dnDevNode: DEVNODE, ulHardwareProfile: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET822 pub fn CM_Delete_DevNode_Key_Ex( 823 dnDevNode: DEVNODE, 824 ulHardwareProfile: ULONG, 825 ulFlags: ULONG, 826 hMachine: HMACHINE, 827 ) -> CONFIGRET; CM_Delete_Range( ullStartValue: DWORDLONG, ullEndValue: DWORDLONG, rlh: RANGE_LIST, ulFlags: ULONG, ) -> CONFIGRET828 pub fn CM_Delete_Range( 829 ullStartValue: DWORDLONG, 830 ullEndValue: DWORDLONG, 831 rlh: RANGE_LIST, 832 ulFlags: ULONG, 833 ) -> CONFIGRET; CM_Detect_Resource_Conflict( dnDevInst: DEVINST, ResourceID: RESOURCEID, ResourceData: PCVOID, ResourceLen: ULONG, pbConflictDetected: PBOOL, ulFlags: ULONG, ) -> CONFIGRET834 pub fn CM_Detect_Resource_Conflict( 835 dnDevInst: DEVINST, 836 ResourceID: RESOURCEID, 837 ResourceData: PCVOID, 838 ResourceLen: ULONG, 839 pbConflictDetected: PBOOL, 840 ulFlags: ULONG, 841 ) -> CONFIGRET; CM_Detect_Resource_Conflict_Ex( dnDevInst: DEVINST, ResourceID: RESOURCEID, ResourceData: PCVOID, ResourceLen: ULONG, pbConflictDetected: PBOOL, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET842 pub fn CM_Detect_Resource_Conflict_Ex( 843 dnDevInst: DEVINST, 844 ResourceID: RESOURCEID, 845 ResourceData: PCVOID, 846 ResourceLen: ULONG, 847 pbConflictDetected: PBOOL, 848 ulFlags: ULONG, 849 hMachine: HMACHINE, 850 ) -> CONFIGRET; CM_Disable_DevNode( dnDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET851 pub fn CM_Disable_DevNode( 852 dnDevInst: DEVINST, 853 ulFlags: ULONG, 854 ) -> CONFIGRET; CM_Disable_DevNode_Ex( dnDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET855 pub fn CM_Disable_DevNode_Ex( 856 dnDevInst: DEVINST, 857 ulFlags: ULONG, 858 hMachine: HMACHINE, 859 ) -> CONFIGRET; CM_Disconnect_Machine( hMachine: HMACHINE, ) -> CONFIGRET860 pub fn CM_Disconnect_Machine( 861 hMachine: HMACHINE, 862 ) -> CONFIGRET; CM_Dup_Range_List( rlhOld: RANGE_LIST, rlhNew: RANGE_LIST, ulFlags: ULONG, ) -> CONFIGRET863 pub fn CM_Dup_Range_List( 864 rlhOld: RANGE_LIST, 865 rlhNew: RANGE_LIST, 866 ulFlags: ULONG, 867 ) -> CONFIGRET; CM_Enable_DevNode( dnDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET868 pub fn CM_Enable_DevNode( 869 dnDevInst: DEVINST, 870 ulFlags: ULONG, 871 ) -> CONFIGRET; CM_Enable_DevNode_Ex( dnDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET872 pub fn CM_Enable_DevNode_Ex( 873 dnDevInst: DEVINST, 874 ulFlags: ULONG, 875 hMachine: HMACHINE, 876 ) -> CONFIGRET; CM_Enumerate_Classes( ulClassIndex: ULONG, ClassGuid: LPGUID, ulFlags: ULONG, ) -> CONFIGRET877 pub fn CM_Enumerate_Classes( 878 ulClassIndex: ULONG, 879 ClassGuid: LPGUID, 880 ulFlags: ULONG, 881 ) -> CONFIGRET; CM_Enumerate_Classes_Ex( ulClassIndex: ULONG, ClassGuid: LPGUID, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET882 pub fn CM_Enumerate_Classes_Ex( 883 ulClassIndex: ULONG, 884 ClassGuid: LPGUID, 885 ulFlags: ULONG, 886 hMachine: HMACHINE, 887 ) -> CONFIGRET; CM_Enumerate_EnumeratorsA( ulEnumIndex: ULONG, Buffer: PSTR, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET888 pub fn CM_Enumerate_EnumeratorsA( 889 ulEnumIndex: ULONG, 890 Buffer: PSTR, 891 pulLength: PULONG, 892 ulFlags: ULONG, 893 ) -> CONFIGRET; CM_Enumerate_EnumeratorsW( ulEnumIndex: ULONG, Buffer: PWSTR, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET894 pub fn CM_Enumerate_EnumeratorsW( 895 ulEnumIndex: ULONG, 896 Buffer: PWSTR, 897 pulLength: PULONG, 898 ulFlags: ULONG, 899 ) -> CONFIGRET; CM_Enumerate_Enumerators_ExA( ulEnumIndex: ULONG, Buffer: PSTR, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET900 pub fn CM_Enumerate_Enumerators_ExA( 901 ulEnumIndex: ULONG, 902 Buffer: PSTR, 903 pulLength: PULONG, 904 ulFlags: ULONG, 905 hMachine: HMACHINE, 906 ) -> CONFIGRET; CM_Enumerate_Enumerators_ExW( ulEnumIndex: ULONG, Buffer: PWSTR, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET907 pub fn CM_Enumerate_Enumerators_ExW( 908 ulEnumIndex: ULONG, 909 Buffer: PWSTR, 910 pulLength: PULONG, 911 ulFlags: ULONG, 912 hMachine: HMACHINE, 913 ) -> CONFIGRET; CM_Find_Range( pullStart: PDWORDLONG, ullStart: DWORDLONG, ulLength: ULONG, ullAlignment: DWORDLONG, ullEnd: DWORDLONG, rlh: RANGE_LIST, ulFlags: ULONG, ) -> CONFIGRET914 pub fn CM_Find_Range( 915 pullStart: PDWORDLONG, 916 ullStart: DWORDLONG, 917 ulLength: ULONG, 918 ullAlignment: DWORDLONG, 919 ullEnd: DWORDLONG, 920 rlh: RANGE_LIST, 921 ulFlags: ULONG, 922 ) -> CONFIGRET; CM_First_Range( rlh: RANGE_LIST, pullStart: PDWORDLONG, pullEnd: PDWORDLONG, preElement: PRANGE_LIST, ulFlags: ULONG, ) -> CONFIGRET923 pub fn CM_First_Range( 924 rlh: RANGE_LIST, 925 pullStart: PDWORDLONG, 926 pullEnd: PDWORDLONG, 927 preElement: PRANGE_LIST, 928 ulFlags: ULONG, 929 ) -> CONFIGRET; CM_Free_Log_Conf( lcLogConfToBeFreed: LOG_CONF, ulFlags: ULONG, ) -> CONFIGRET930 pub fn CM_Free_Log_Conf( 931 lcLogConfToBeFreed: LOG_CONF, 932 ulFlags: ULONG, 933 ) -> CONFIGRET; CM_Free_Log_Conf_Ex( lcLogConfToBeFreed: LOG_CONF, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET934 pub fn CM_Free_Log_Conf_Ex( 935 lcLogConfToBeFreed: LOG_CONF, 936 ulFlags: ULONG, 937 hMachine: HMACHINE, 938 ) -> CONFIGRET; CM_Free_Log_Conf_Handle( lcLogConf: LOG_CONF, ) -> CONFIGRET939 pub fn CM_Free_Log_Conf_Handle( 940 lcLogConf: LOG_CONF, 941 ) -> CONFIGRET; CM_Free_Range_List( rlh: RANGE_LIST, ulFlags: ULONG, ) -> CONFIGRET942 pub fn CM_Free_Range_List( 943 rlh: RANGE_LIST, 944 ulFlags: ULONG, 945 ) -> CONFIGRET; CM_Free_Res_Des( prdResDes: PRES_DES, rdResDes: RES_DES, ulFlags: ULONG, ) -> CONFIGRET946 pub fn CM_Free_Res_Des( 947 prdResDes: PRES_DES, 948 rdResDes: RES_DES, 949 ulFlags: ULONG, 950 ) -> CONFIGRET; CM_Free_Res_Des_Ex( prdResDes: PRES_DES, rdResDes: RES_DES, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET951 pub fn CM_Free_Res_Des_Ex( 952 prdResDes: PRES_DES, 953 rdResDes: RES_DES, 954 ulFlags: ULONG, 955 hMachine: HMACHINE, 956 ) -> CONFIGRET; CM_Free_Res_Des_Handle( rdResDes: RES_DES, ) -> CONFIGRET957 pub fn CM_Free_Res_Des_Handle( 958 rdResDes: RES_DES, 959 ) -> CONFIGRET; CM_Get_Child( pdnDevInst: PDEVINST, dnDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET960 pub fn CM_Get_Child( 961 pdnDevInst: PDEVINST, 962 dnDevInst: DEVINST, 963 ulFlags: ULONG, 964 ) -> CONFIGRET; CM_Get_Child_Ex( pdnDevInst: PDEVINST, dnDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET965 pub fn CM_Get_Child_Ex( 966 pdnDevInst: PDEVINST, 967 dnDevInst: DEVINST, 968 ulFlags: ULONG, 969 hMachine: HMACHINE, 970 ) -> CONFIGRET; CM_Get_Class_Key_NameA( ClassGuid: LPGUID, pszKeyName: LPSTR, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET971 pub fn CM_Get_Class_Key_NameA( 972 ClassGuid: LPGUID, 973 pszKeyName: LPSTR, 974 pulLength: PULONG, 975 ulFlags: ULONG, 976 ) -> CONFIGRET; CM_Get_Class_Key_NameW( ClassGuid: LPGUID, pszKeyName: LPWSTR, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET977 pub fn CM_Get_Class_Key_NameW( 978 ClassGuid: LPGUID, 979 pszKeyName: LPWSTR, 980 pulLength: PULONG, 981 ulFlags: ULONG, 982 ) -> CONFIGRET; CM_Get_Class_Key_Name_ExA( ClassGuid: LPGUID, pszKeyName: LPSTR, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET983 pub fn CM_Get_Class_Key_Name_ExA( 984 ClassGuid: LPGUID, 985 pszKeyName: LPSTR, 986 pulLength: PULONG, 987 ulFlags: ULONG, 988 hMachine: HMACHINE, 989 ) -> CONFIGRET; CM_Get_Class_Key_Name_ExW( ClassGuid: LPGUID, pszKeyName: LPWSTR, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET990 pub fn CM_Get_Class_Key_Name_ExW( 991 ClassGuid: LPGUID, 992 pszKeyName: LPWSTR, 993 pulLength: PULONG, 994 ulFlags: ULONG, 995 hMachine: HMACHINE, 996 ) -> CONFIGRET; CM_Get_Class_NameA( ClassGuid: LPGUID, Buffer: PSTR, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET997 pub fn CM_Get_Class_NameA( 998 ClassGuid: LPGUID, 999 Buffer: PSTR, 1000 pulLength: PULONG, 1001 ulFlags: ULONG, 1002 ) -> CONFIGRET; CM_Get_Class_NameW( ClassGuid: LPGUID, Buffer: PWSTR, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET1003 pub fn CM_Get_Class_NameW( 1004 ClassGuid: LPGUID, 1005 Buffer: PWSTR, 1006 pulLength: PULONG, 1007 ulFlags: ULONG, 1008 ) -> CONFIGRET; CM_Get_Class_Name_ExA( ClassGuid: LPGUID, Buffer: PSTR, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1009 pub fn CM_Get_Class_Name_ExA( 1010 ClassGuid: LPGUID, 1011 Buffer: PSTR, 1012 pulLength: PULONG, 1013 ulFlags: ULONG, 1014 hMachine: HMACHINE, 1015 ) -> CONFIGRET; CM_Get_Class_Name_ExW( ClassGuid: LPGUID, Buffer: PWSTR, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1016 pub fn CM_Get_Class_Name_ExW( 1017 ClassGuid: LPGUID, 1018 Buffer: PWSTR, 1019 pulLength: PULONG, 1020 ulFlags: ULONG, 1021 hMachine: HMACHINE, 1022 ) -> CONFIGRET; CM_Get_Depth( pulDepth: PULONG, dnDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET1023 pub fn CM_Get_Depth( 1024 pulDepth: PULONG, 1025 dnDevInst: DEVINST, 1026 ulFlags: ULONG, 1027 ) -> CONFIGRET; CM_Get_Depth_Ex( pulDepth: PULONG, dnDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1028 pub fn CM_Get_Depth_Ex( 1029 pulDepth: PULONG, 1030 dnDevInst: DEVINST, 1031 ulFlags: ULONG, 1032 hMachine: HMACHINE, 1033 ) -> CONFIGRET; CM_Get_Device_IDA( dnDevInst: DEVINST, Buffer: PSTR, BufferLen: ULONG, ulFlags: ULONG, ) -> CONFIGRET1034 pub fn CM_Get_Device_IDA( 1035 dnDevInst: DEVINST, 1036 Buffer: PSTR, 1037 BufferLen: ULONG, 1038 ulFlags: ULONG, 1039 ) -> CONFIGRET; CM_Get_Device_IDW( dnDevInst: DEVINST, Buffer: PWSTR, BufferLen: ULONG, ulFlags: ULONG, ) -> CONFIGRET1040 pub fn CM_Get_Device_IDW( 1041 dnDevInst: DEVINST, 1042 Buffer: PWSTR, 1043 BufferLen: ULONG, 1044 ulFlags: ULONG, 1045 ) -> CONFIGRET; CM_Get_Device_ID_ExA( dnDevInst: DEVINST, Buffer: PSTR, BufferLen: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1046 pub fn CM_Get_Device_ID_ExA( 1047 dnDevInst: DEVINST, 1048 Buffer: PSTR, 1049 BufferLen: ULONG, 1050 ulFlags: ULONG, 1051 hMachine: HMACHINE, 1052 ) -> CONFIGRET; CM_Get_Device_ID_ExW( dnDevInst: DEVINST, Buffer: PWSTR, BufferLen: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1053 pub fn CM_Get_Device_ID_ExW( 1054 dnDevInst: DEVINST, 1055 Buffer: PWSTR, 1056 BufferLen: ULONG, 1057 ulFlags: ULONG, 1058 hMachine: HMACHINE, 1059 ) -> CONFIGRET; CM_Get_Device_ID_ListA( pszFilter: PCSTR, Buffer: PCHAR, BufferLen: ULONG, ulFlags: ULONG, ) -> CONFIGRET1060 pub fn CM_Get_Device_ID_ListA( 1061 pszFilter: PCSTR, 1062 Buffer: PCHAR, 1063 BufferLen: ULONG, 1064 ulFlags: ULONG, 1065 ) -> CONFIGRET; CM_Get_Device_ID_ListW( pszFilter: PCWSTR, Buffer: PWCHAR, BufferLen: ULONG, ulFlags: ULONG, ) -> CONFIGRET1066 pub fn CM_Get_Device_ID_ListW( 1067 pszFilter: PCWSTR, 1068 Buffer: PWCHAR, 1069 BufferLen: ULONG, 1070 ulFlags: ULONG, 1071 ) -> CONFIGRET; CM_Get_Device_ID_List_ExA( pszFilter: PCSTR, Buffer: PCHAR, BufferLen: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1072 pub fn CM_Get_Device_ID_List_ExA( 1073 pszFilter: PCSTR, 1074 Buffer: PCHAR, 1075 BufferLen: ULONG, 1076 ulFlags: ULONG, 1077 hMachine: HMACHINE, 1078 ) -> CONFIGRET; CM_Get_Device_ID_List_ExW( pszFilter: PCWSTR, Buffer: PWCHAR, BufferLen: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1079 pub fn CM_Get_Device_ID_List_ExW( 1080 pszFilter: PCWSTR, 1081 Buffer: PWCHAR, 1082 BufferLen: ULONG, 1083 ulFlags: ULONG, 1084 hMachine: HMACHINE, 1085 ) -> CONFIGRET; CM_Get_Device_ID_List_SizeA( pulLen: PULONG, pszFilter: PCSTR, ulFlags: ULONG, ) -> CONFIGRET1086 pub fn CM_Get_Device_ID_List_SizeA( 1087 pulLen: PULONG, 1088 pszFilter: PCSTR, 1089 ulFlags: ULONG, 1090 ) -> CONFIGRET; CM_Get_Device_ID_List_SizeW( pulLen: PULONG, pszFilter: PCWSTR, ulFlags: ULONG, ) -> CONFIGRET1091 pub fn CM_Get_Device_ID_List_SizeW( 1092 pulLen: PULONG, 1093 pszFilter: PCWSTR, 1094 ulFlags: ULONG, 1095 ) -> CONFIGRET; CM_Get_Device_ID_List_Size_ExA( pulLen: PULONG, pszFilter: PCSTR, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1096 pub fn CM_Get_Device_ID_List_Size_ExA( 1097 pulLen: PULONG, 1098 pszFilter: PCSTR, 1099 ulFlags: ULONG, 1100 hMachine: HMACHINE, 1101 ) -> CONFIGRET; CM_Get_Device_ID_List_Size_ExW( pulLen: PULONG, pszFilter: PCWSTR, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1102 pub fn CM_Get_Device_ID_List_Size_ExW( 1103 pulLen: PULONG, 1104 pszFilter: PCWSTR, 1105 ulFlags: ULONG, 1106 hMachine: HMACHINE, 1107 ) -> CONFIGRET; CM_Get_Device_ID_Size( pulLen: PULONG, dnDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET1108 pub fn CM_Get_Device_ID_Size( 1109 pulLen: PULONG, 1110 dnDevInst: DEVINST, 1111 ulFlags: ULONG, 1112 ) -> CONFIGRET; CM_Get_Device_ID_Size_Ex( pulLen: PULONG, dnDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1113 pub fn CM_Get_Device_ID_Size_Ex( 1114 pulLen: PULONG, 1115 dnDevInst: DEVINST, 1116 ulFlags: ULONG, 1117 hMachine: HMACHINE, 1118 ) -> CONFIGRET; CM_Get_DevNode_PropertyW( dnDevInst: DEVINST, PropertyKey: *const DEVPROPKEY, PropertyType: *mut DEVPROPTYPE, PropertyBuffer: PBYTE, PropertyBufferSize: PULONG, ulFlags: ULONG, ) -> CONFIGRET1119 pub fn CM_Get_DevNode_PropertyW( 1120 dnDevInst: DEVINST, 1121 PropertyKey: *const DEVPROPKEY, 1122 PropertyType: *mut DEVPROPTYPE, 1123 PropertyBuffer: PBYTE, 1124 PropertyBufferSize: PULONG, 1125 ulFlags: ULONG, 1126 ) -> CONFIGRET; CM_Get_DevNode_PropertyExW( dnDevInst: DEVINST, PropertyKey: *const DEVPROPKEY, PropertyType: *mut DEVPROPTYPE, PropertyBuffer: PBYTE, PropertyBufferSize: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1127 pub fn CM_Get_DevNode_PropertyExW( 1128 dnDevInst: DEVINST, 1129 PropertyKey: *const DEVPROPKEY, 1130 PropertyType: *mut DEVPROPTYPE, 1131 PropertyBuffer: PBYTE, 1132 PropertyBufferSize: PULONG, 1133 ulFlags: ULONG, 1134 hMachine: HMACHINE, 1135 ) -> CONFIGRET; CM_Get_DevNode_Registry_PropertyA( dnDevInst: DEVINST, ulProperty: ULONG, pulRegDataType: PULONG, Buffer: PVOID, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET1136 pub fn CM_Get_DevNode_Registry_PropertyA( 1137 dnDevInst: DEVINST, 1138 ulProperty: ULONG, 1139 pulRegDataType: PULONG, 1140 Buffer: PVOID, 1141 pulLength: PULONG, 1142 ulFlags: ULONG, 1143 ) -> CONFIGRET; CM_Get_DevNode_Registry_PropertyW( dnDevInst: DEVINST, ulProperty: ULONG, pulRegDataType: PULONG, Buffer: PVOID, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET1144 pub fn CM_Get_DevNode_Registry_PropertyW( 1145 dnDevInst: DEVINST, 1146 ulProperty: ULONG, 1147 pulRegDataType: PULONG, 1148 Buffer: PVOID, 1149 pulLength: PULONG, 1150 ulFlags: ULONG, 1151 ) -> CONFIGRET; CM_Get_DevNode_Registry_Property_ExA( dnDevInst: DEVINST, ulProperty: ULONG, pulRegDataType: PULONG, Buffer: PVOID, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1152 pub fn CM_Get_DevNode_Registry_Property_ExA( 1153 dnDevInst: DEVINST, 1154 ulProperty: ULONG, 1155 pulRegDataType: PULONG, 1156 Buffer: PVOID, 1157 pulLength: PULONG, 1158 ulFlags: ULONG, 1159 hMachine: HMACHINE, 1160 ) -> CONFIGRET; CM_Get_DevNode_Registry_Property_ExW( dnDevInst: DEVINST, ulProperty: ULONG, pulRegDataType: PULONG, Buffer: PVOID, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1161 pub fn CM_Get_DevNode_Registry_Property_ExW( 1162 dnDevInst: DEVINST, 1163 ulProperty: ULONG, 1164 pulRegDataType: PULONG, 1165 Buffer: PVOID, 1166 pulLength: PULONG, 1167 ulFlags: ULONG, 1168 hMachine: HMACHINE, 1169 ) -> CONFIGRET; CM_Get_DevNode_Custom_PropertyA( dnDevInst: DEVINST, pszCustomPropertyName: PCSTR, pulRegDataType: PULONG, Buffer: PVOID, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET1170 pub fn CM_Get_DevNode_Custom_PropertyA( 1171 dnDevInst: DEVINST, 1172 pszCustomPropertyName: PCSTR, 1173 pulRegDataType: PULONG, 1174 Buffer: PVOID, 1175 pulLength: PULONG, 1176 ulFlags: ULONG, 1177 ) -> CONFIGRET; CM_Get_DevNode_Custom_PropertyW( dnDevInst: DEVINST, pszCustomPropertyName: PCWSTR, pulRegDataType: PULONG, Buffer: PVOID, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET1178 pub fn CM_Get_DevNode_Custom_PropertyW( 1179 dnDevInst: DEVINST, 1180 pszCustomPropertyName: PCWSTR, 1181 pulRegDataType: PULONG, 1182 Buffer: PVOID, 1183 pulLength: PULONG, 1184 ulFlags: ULONG, 1185 ) -> CONFIGRET; CM_Get_DevNode_Custom_Property_ExA( dnDevInst: DEVINST, pszCustomPropertyName: PCSTR, pulRegDataType: PULONG, Buffer: PVOID, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1186 pub fn CM_Get_DevNode_Custom_Property_ExA( 1187 dnDevInst: DEVINST, 1188 pszCustomPropertyName: PCSTR, 1189 pulRegDataType: PULONG, 1190 Buffer: PVOID, 1191 pulLength: PULONG, 1192 ulFlags: ULONG, 1193 hMachine: HMACHINE, 1194 ) -> CONFIGRET; CM_Get_DevNode_Custom_Property_ExW( dnDevInst: DEVINST, pszCustomPropertyName: PCWSTR, pulRegDataType: PULONG, Buffer: PVOID, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1195 pub fn CM_Get_DevNode_Custom_Property_ExW( 1196 dnDevInst: DEVINST, 1197 pszCustomPropertyName: PCWSTR, 1198 pulRegDataType: PULONG, 1199 Buffer: PVOID, 1200 pulLength: PULONG, 1201 ulFlags: ULONG, 1202 hMachine: HMACHINE, 1203 ) -> CONFIGRET; CM_Get_DevNode_Status( pulStatus: PULONG, pulProblemNumber: PULONG, dnDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET1204 pub fn CM_Get_DevNode_Status( 1205 pulStatus: PULONG, 1206 pulProblemNumber: PULONG, 1207 dnDevInst: DEVINST, 1208 ulFlags: ULONG, 1209 ) -> CONFIGRET; CM_Get_DevNode_Status_Ex( pulStatus: PULONG, pulProblemNumber: PULONG, dnDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1210 pub fn CM_Get_DevNode_Status_Ex( 1211 pulStatus: PULONG, 1212 pulProblemNumber: PULONG, 1213 dnDevInst: DEVINST, 1214 ulFlags: ULONG, 1215 hMachine: HMACHINE, 1216 ) -> CONFIGRET; CM_Get_First_Log_Conf( plcLogConf: PLOG_CONF, dnDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET1217 pub fn CM_Get_First_Log_Conf( 1218 plcLogConf: PLOG_CONF, 1219 dnDevInst: DEVINST, 1220 ulFlags: ULONG, 1221 ) -> CONFIGRET; CM_Get_First_Log_Conf_Ex( plcLogConf: PLOG_CONF, dnDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1222 pub fn CM_Get_First_Log_Conf_Ex( 1223 plcLogConf: PLOG_CONF, 1224 dnDevInst: DEVINST, 1225 ulFlags: ULONG, 1226 hMachine: HMACHINE, 1227 ) -> CONFIGRET; CM_Get_Global_State( pulState: PULONG, ulFlags: ULONG, ) -> CONFIGRET1228 pub fn CM_Get_Global_State( 1229 pulState: PULONG, 1230 ulFlags: ULONG, 1231 ) -> CONFIGRET; CM_Get_Global_State_Ex( pulState: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1232 pub fn CM_Get_Global_State_Ex( 1233 pulState: PULONG, 1234 ulFlags: ULONG, 1235 hMachine: HMACHINE, 1236 ) -> CONFIGRET; CM_Get_Hardware_Profile_InfoA( ulIndex: ULONG, pHWProfileInfo: PHWPROFILEINFO_A, ulFlags: ULONG, ) -> CONFIGRET1237 pub fn CM_Get_Hardware_Profile_InfoA( 1238 ulIndex: ULONG, 1239 pHWProfileInfo: PHWPROFILEINFO_A, 1240 ulFlags: ULONG, 1241 ) -> CONFIGRET; CM_Get_Hardware_Profile_Info_ExA( ulIndex: ULONG, pHWProfileInfo: PHWPROFILEINFO_A, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1242 pub fn CM_Get_Hardware_Profile_Info_ExA( 1243 ulIndex: ULONG, 1244 pHWProfileInfo: PHWPROFILEINFO_A, 1245 ulFlags: ULONG, 1246 hMachine: HMACHINE, 1247 ) -> CONFIGRET; CM_Get_Hardware_Profile_InfoW( ulIndex: ULONG, pHWProfileInfo: PHWPROFILEINFO_W, ulFlags: ULONG, ) -> CONFIGRET1248 pub fn CM_Get_Hardware_Profile_InfoW( 1249 ulIndex: ULONG, 1250 pHWProfileInfo: PHWPROFILEINFO_W, 1251 ulFlags: ULONG, 1252 ) -> CONFIGRET; CM_Get_Hardware_Profile_Info_ExW( ulIndex: ULONG, pHWProfileInfo: PHWPROFILEINFO_W, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1253 pub fn CM_Get_Hardware_Profile_Info_ExW( 1254 ulIndex: ULONG, 1255 pHWProfileInfo: PHWPROFILEINFO_W, 1256 ulFlags: ULONG, 1257 hMachine: HMACHINE, 1258 ) -> CONFIGRET; CM_Get_HW_Prof_FlagsA( pDeviceID: DEVINSTID_A, ulHardwareProfile: ULONG, pulValue: PULONG, ulFlags: ULONG, ) -> CONFIGRET1259 pub fn CM_Get_HW_Prof_FlagsA( 1260 pDeviceID: DEVINSTID_A, 1261 ulHardwareProfile: ULONG, 1262 pulValue: PULONG, 1263 ulFlags: ULONG, 1264 ) -> CONFIGRET; CM_Get_HW_Prof_FlagsW( pDeviceID: DEVINSTID_W, ulHardwareProfile: ULONG, pulValue: PULONG, ulFlags: ULONG, ) -> CONFIGRET1265 pub fn CM_Get_HW_Prof_FlagsW( 1266 pDeviceID: DEVINSTID_W, 1267 ulHardwareProfile: ULONG, 1268 pulValue: PULONG, 1269 ulFlags: ULONG, 1270 ) -> CONFIGRET; CM_Get_HW_Prof_Flags_ExA( pDeviceID: DEVINSTID_A, ulHardwareProfile: ULONG, pulValue: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1271 pub fn CM_Get_HW_Prof_Flags_ExA( 1272 pDeviceID: DEVINSTID_A, 1273 ulHardwareProfile: ULONG, 1274 pulValue: PULONG, 1275 ulFlags: ULONG, 1276 hMachine: HMACHINE, 1277 ) -> CONFIGRET; CM_Get_HW_Prof_Flags_ExW( pDeviceID: DEVINSTID_W, ulHardwareProfile: ULONG, pulValue: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1278 pub fn CM_Get_HW_Prof_Flags_ExW( 1279 pDeviceID: DEVINSTID_W, 1280 ulHardwareProfile: ULONG, 1281 pulValue: PULONG, 1282 ulFlags: ULONG, 1283 hMachine: HMACHINE, 1284 ) -> CONFIGRET; CM_Get_Device_Interface_AliasA( pszDeviceInterface: LPCSTR, AliasInterfaceGuid: LPGUID, pszAliasDeviceInterface: LPSTR, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET1285 pub fn CM_Get_Device_Interface_AliasA( 1286 pszDeviceInterface: LPCSTR, 1287 AliasInterfaceGuid: LPGUID, 1288 pszAliasDeviceInterface: LPSTR, 1289 pulLength: PULONG, 1290 ulFlags: ULONG, 1291 ) -> CONFIGRET; CM_Get_Device_Interface_AliasW( pszDeviceInterface: LPCWSTR, AliasInterfaceGuid: LPGUID, pszAliasDeviceInterface: LPWSTR, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET1292 pub fn CM_Get_Device_Interface_AliasW( 1293 pszDeviceInterface: LPCWSTR, 1294 AliasInterfaceGuid: LPGUID, 1295 pszAliasDeviceInterface: LPWSTR, 1296 pulLength: PULONG, 1297 ulFlags: ULONG, 1298 ) -> CONFIGRET; CM_Get_Device_Interface_Alias_ExA( pszDeviceInterface: LPCSTR, AliasInterfaceGuid: LPGUID, pszAliasDeviceInterface: LPSTR, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1299 pub fn CM_Get_Device_Interface_Alias_ExA( 1300 pszDeviceInterface: LPCSTR, 1301 AliasInterfaceGuid: LPGUID, 1302 pszAliasDeviceInterface: LPSTR, 1303 pulLength: PULONG, 1304 ulFlags: ULONG, 1305 hMachine: HMACHINE, 1306 ) -> CONFIGRET; CM_Get_Device_Interface_Alias_ExW( pszDeviceInterface: LPCWSTR, AliasInterfaceGuid: LPGUID, pszAliasDeviceInterface: LPWSTR, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1307 pub fn CM_Get_Device_Interface_Alias_ExW( 1308 pszDeviceInterface: LPCWSTR, 1309 AliasInterfaceGuid: LPGUID, 1310 pszAliasDeviceInterface: LPWSTR, 1311 pulLength: PULONG, 1312 ulFlags: ULONG, 1313 hMachine: HMACHINE, 1314 ) -> CONFIGRET; CM_Get_Device_Interface_ListA( InterfaceClassGuid: LPGUID, pDeviceID: DEVINSTID_A, Buffer: PCHAR, BufferLen: ULONG, ulFlags: ULONG, ) -> CONFIGRET1315 pub fn CM_Get_Device_Interface_ListA( 1316 InterfaceClassGuid: LPGUID, 1317 pDeviceID: DEVINSTID_A, 1318 Buffer: PCHAR, 1319 BufferLen: ULONG, 1320 ulFlags: ULONG, 1321 ) -> CONFIGRET; CM_Get_Device_Interface_ListW( InterfaceClassGuid: LPGUID, pDeviceID: DEVINSTID_W, Buffer: PWCHAR, BufferLen: ULONG, ulFlags: ULONG, ) -> CONFIGRET1322 pub fn CM_Get_Device_Interface_ListW( 1323 InterfaceClassGuid: LPGUID, 1324 pDeviceID: DEVINSTID_W, 1325 Buffer: PWCHAR, 1326 BufferLen: ULONG, 1327 ulFlags: ULONG, 1328 ) -> CONFIGRET; CM_Get_Device_Interface_List_ExA( InterfaceClassGuid: LPGUID, pDeviceID: DEVINSTID_A, Buffer: PCHAR, BufferLen: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1329 pub fn CM_Get_Device_Interface_List_ExA( 1330 InterfaceClassGuid: LPGUID, 1331 pDeviceID: DEVINSTID_A, 1332 Buffer: PCHAR, 1333 BufferLen: ULONG, 1334 ulFlags: ULONG, 1335 hMachine: HMACHINE, 1336 ) -> CONFIGRET; CM_Get_Device_Interface_List_ExW( InterfaceClassGuid: LPGUID, pDeviceID: DEVINSTID_W, Buffer: PWCHAR, BufferLen: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1337 pub fn CM_Get_Device_Interface_List_ExW( 1338 InterfaceClassGuid: LPGUID, 1339 pDeviceID: DEVINSTID_W, 1340 Buffer: PWCHAR, 1341 BufferLen: ULONG, 1342 ulFlags: ULONG, 1343 hMachine: HMACHINE, 1344 ) -> CONFIGRET; CM_Get_Device_Interface_List_SizeA( pulLen: PULONG, InterfaceClassGuid: LPGUID, pDeviceID: DEVINSTID_A, ulFlags: ULONG, ) -> CONFIGRET1345 pub fn CM_Get_Device_Interface_List_SizeA( 1346 pulLen: PULONG, 1347 InterfaceClassGuid: LPGUID, 1348 pDeviceID: DEVINSTID_A, 1349 ulFlags: ULONG, 1350 ) -> CONFIGRET; CM_Get_Device_Interface_List_SizeW( pulLen: PULONG, InterfaceClassGuid: LPGUID, pDeviceID: DEVINSTID_W, ulFlags: ULONG, ) -> CONFIGRET1351 pub fn CM_Get_Device_Interface_List_SizeW( 1352 pulLen: PULONG, 1353 InterfaceClassGuid: LPGUID, 1354 pDeviceID: DEVINSTID_W, 1355 ulFlags: ULONG, 1356 ) -> CONFIGRET; CM_Get_Device_Interface_List_Size_ExA( pulLen: PULONG, InterfaceClassGuid: LPGUID, pDeviceID: DEVINSTID_A, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1357 pub fn CM_Get_Device_Interface_List_Size_ExA( 1358 pulLen: PULONG, 1359 InterfaceClassGuid: LPGUID, 1360 pDeviceID: DEVINSTID_A, 1361 ulFlags: ULONG, 1362 hMachine: HMACHINE, 1363 ) -> CONFIGRET; CM_Get_Device_Interface_List_Size_ExW( pulLen: PULONG, InterfaceClassGuid: LPGUID, pDeviceID: DEVINSTID_W, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1364 pub fn CM_Get_Device_Interface_List_Size_ExW( 1365 pulLen: PULONG, 1366 InterfaceClassGuid: LPGUID, 1367 pDeviceID: DEVINSTID_W, 1368 ulFlags: ULONG, 1369 hMachine: HMACHINE, 1370 ) -> CONFIGRET; CM_Get_Device_Interface_PropertyW( pszDeviceInterface: LPCWSTR, PropertyKey: *const DEVPROPKEY, PropertyType: *mut DEVPROPTYPE, PropertyBuffer: PBYTE, PropertyBufferSize: PULONG, ulFlags: ULONG, ) -> CONFIGRET1371 pub fn CM_Get_Device_Interface_PropertyW( 1372 pszDeviceInterface: LPCWSTR, 1373 PropertyKey: *const DEVPROPKEY, 1374 PropertyType: *mut DEVPROPTYPE, 1375 PropertyBuffer: PBYTE, 1376 PropertyBufferSize: PULONG, 1377 ulFlags: ULONG, 1378 ) -> CONFIGRET; CM_Get_Device_Interface_PropertyExW( pszDeviceInterface: LPCWSTR, PropertyKey: *const DEVPROPKEY, PropertyType: *mut DEVPROPTYPE, PropertyBuffer: PBYTE, PropertyBufferSize: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1379 pub fn CM_Get_Device_Interface_PropertyExW( 1380 pszDeviceInterface: LPCWSTR, 1381 PropertyKey: *const DEVPROPKEY, 1382 PropertyType: *mut DEVPROPTYPE, 1383 PropertyBuffer: PBYTE, 1384 PropertyBufferSize: PULONG, 1385 ulFlags: ULONG, 1386 hMachine: HMACHINE, 1387 ) -> CONFIGRET; CM_Get_Log_Conf_Priority( lcLogConf: LOG_CONF, pPriority: PRIORITY, ulFlags: ULONG, ) -> CONFIGRET1388 pub fn CM_Get_Log_Conf_Priority( 1389 lcLogConf: LOG_CONF, 1390 pPriority: PRIORITY, 1391 ulFlags: ULONG, 1392 ) -> CONFIGRET; CM_Get_Log_Conf_Priority_Ex( lcLogConf: LOG_CONF, pPriority: PRIORITY, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1393 pub fn CM_Get_Log_Conf_Priority_Ex( 1394 lcLogConf: LOG_CONF, 1395 pPriority: PRIORITY, 1396 ulFlags: ULONG, 1397 hMachine: HMACHINE, 1398 ) -> CONFIGRET; CM_Get_Next_Log_Conf( plcLogConf: PLOG_CONF, lcLogConf: LOG_CONF, ulFlags: ULONG, ) -> CONFIGRET1399 pub fn CM_Get_Next_Log_Conf( 1400 plcLogConf: PLOG_CONF, 1401 lcLogConf: LOG_CONF, 1402 ulFlags: ULONG, 1403 ) -> CONFIGRET; CM_Get_Next_Log_Conf_Ex( plcLogConf: PLOG_CONF, lcLogConf: LOG_CONF, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1404 pub fn CM_Get_Next_Log_Conf_Ex( 1405 plcLogConf: PLOG_CONF, 1406 lcLogConf: LOG_CONF, 1407 ulFlags: ULONG, 1408 hMachine: HMACHINE, 1409 ) -> CONFIGRET; CM_Get_Parent( pdnDevInst: PDEVINST, dnDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET1410 pub fn CM_Get_Parent( 1411 pdnDevInst: PDEVINST, 1412 dnDevInst: DEVINST, 1413 ulFlags: ULONG, 1414 ) -> CONFIGRET; CM_Get_Parent_Ex( pdnDevInst: PDEVINST, dnDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1415 pub fn CM_Get_Parent_Ex( 1416 pdnDevInst: PDEVINST, 1417 dnDevInst: DEVINST, 1418 ulFlags: ULONG, 1419 hMachine: HMACHINE, 1420 ) -> CONFIGRET; CM_Get_Res_Des_Data( rdResDes: RES_DES, Buffer: PVOID, BufferLen: ULONG, ulFlags: ULONG, ) -> CONFIGRET1421 pub fn CM_Get_Res_Des_Data( 1422 rdResDes: RES_DES, 1423 Buffer: PVOID, 1424 BufferLen: ULONG, 1425 ulFlags: ULONG, 1426 ) -> CONFIGRET; CM_Get_Res_Des_Data_Ex( rdResDes: RES_DES, Buffer: PVOID, BufferLen: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1427 pub fn CM_Get_Res_Des_Data_Ex( 1428 rdResDes: RES_DES, 1429 Buffer: PVOID, 1430 BufferLen: ULONG, 1431 ulFlags: ULONG, 1432 hMachine: HMACHINE, 1433 ) -> CONFIGRET; CM_Get_Res_Des_Data_Size( pulSize: PULONG, rdResDes: RES_DES, ulFlags: ULONG, ) -> CONFIGRET1434 pub fn CM_Get_Res_Des_Data_Size( 1435 pulSize: PULONG, 1436 rdResDes: RES_DES, 1437 ulFlags: ULONG, 1438 ) -> CONFIGRET; CM_Get_Res_Des_Data_Size_Ex( pulSize: PULONG, rdResDes: RES_DES, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1439 pub fn CM_Get_Res_Des_Data_Size_Ex( 1440 pulSize: PULONG, 1441 rdResDes: RES_DES, 1442 ulFlags: ULONG, 1443 hMachine: HMACHINE, 1444 ) -> CONFIGRET; CM_Get_Sibling( pdnDevInst: PDEVINST, dnDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET1445 pub fn CM_Get_Sibling( 1446 pdnDevInst: PDEVINST, 1447 dnDevInst: DEVINST, 1448 ulFlags: ULONG, 1449 ) -> CONFIGRET; CM_Get_Sibling_Ex( pdnDevInst: PDEVINST, dnDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1450 pub fn CM_Get_Sibling_Ex( 1451 pdnDevInst: PDEVINST, 1452 dnDevInst: DEVINST, 1453 ulFlags: ULONG, 1454 hMachine: HMACHINE, 1455 ) -> CONFIGRET; CM_Get_Version() -> WORD1456 pub fn CM_Get_Version() -> WORD; CM_Get_Version_Ex( hMachine: HMACHINE, ) -> WORD1457 pub fn CM_Get_Version_Ex( 1458 hMachine: HMACHINE, 1459 ) -> WORD; CM_Is_Version_Available( wVersion: WORD, ) -> BOOL1460 pub fn CM_Is_Version_Available( 1461 wVersion: WORD, 1462 ) -> BOOL; CM_Is_Version_Available_Ex( wVersion: WORD, hMachine: HMACHINE, ) -> BOOL1463 pub fn CM_Is_Version_Available_Ex( 1464 wVersion: WORD, 1465 hMachine: HMACHINE, 1466 ) -> BOOL; CM_Intersect_Range_List( rlhOld1: RANGE_LIST, rlhOld2: RANGE_LIST, rlhNew: RANGE_LIST, ulFlags: ULONG, ) -> CONFIGRET1467 pub fn CM_Intersect_Range_List( 1468 rlhOld1: RANGE_LIST, 1469 rlhOld2: RANGE_LIST, 1470 rlhNew: RANGE_LIST, 1471 ulFlags: ULONG, 1472 ) -> CONFIGRET; CM_Invert_Range_List( rlhOld: RANGE_LIST, rlhNew: RANGE_LIST, ullMaxValue: DWORDLONG, ulFlags: ULONG, ) -> CONFIGRET1473 pub fn CM_Invert_Range_List( 1474 rlhOld: RANGE_LIST, 1475 rlhNew: RANGE_LIST, 1476 ullMaxValue: DWORDLONG, 1477 ulFlags: ULONG, 1478 ) -> CONFIGRET; CM_Locate_DevNodeA( pdnDevInst: PDEVINST, pDeviceID: DEVINSTID_A, ulFlags: ULONG, ) -> CONFIGRET1479 pub fn CM_Locate_DevNodeA( 1480 pdnDevInst: PDEVINST, 1481 pDeviceID: DEVINSTID_A, 1482 ulFlags: ULONG, 1483 ) -> CONFIGRET; CM_Locate_DevNodeW( pdnDevInst: PDEVINST, pDeviceID: DEVINSTID_W, ulFlags: ULONG, ) -> CONFIGRET1484 pub fn CM_Locate_DevNodeW( 1485 pdnDevInst: PDEVINST, 1486 pDeviceID: DEVINSTID_W, 1487 ulFlags: ULONG, 1488 ) -> CONFIGRET; CM_Locate_DevNode_ExA( pdnDevInst: PDEVINST, pDeviceID: DEVINSTID_A, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1489 pub fn CM_Locate_DevNode_ExA( 1490 pdnDevInst: PDEVINST, 1491 pDeviceID: DEVINSTID_A, 1492 ulFlags: ULONG, 1493 hMachine: HMACHINE, 1494 ) -> CONFIGRET; CM_Locate_DevNode_ExW( pdnDevInst: PDEVINST, pDeviceID: DEVINSTID_W, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1495 pub fn CM_Locate_DevNode_ExW( 1496 pdnDevInst: PDEVINST, 1497 pDeviceID: DEVINSTID_W, 1498 ulFlags: ULONG, 1499 hMachine: HMACHINE, 1500 ) -> CONFIGRET; CM_Merge_Range_List( rlhOld1: RANGE_LIST, rlhOld2: RANGE_LIST, rlhNew: RANGE_LIST, ulFlags: ULONG, ) -> CONFIGRET1501 pub fn CM_Merge_Range_List( 1502 rlhOld1: RANGE_LIST, 1503 rlhOld2: RANGE_LIST, 1504 rlhNew: RANGE_LIST, 1505 ulFlags: ULONG, 1506 ) -> CONFIGRET; CM_Modify_Res_Des( prdResDes: PRES_DES, rdResDes: RES_DES, ResourceID: RESOURCEID, ResourceData: PCVOID, ResourceLen: ULONG, ulFlags: ULONG, ) -> CONFIGRET1507 pub fn CM_Modify_Res_Des( 1508 prdResDes: PRES_DES, 1509 rdResDes: RES_DES, 1510 ResourceID: RESOURCEID, 1511 ResourceData: PCVOID, 1512 ResourceLen: ULONG, 1513 ulFlags: ULONG, 1514 ) -> CONFIGRET; CM_Modify_Res_Des_Ex( prdResDes: PRES_DES, rdResDes: RES_DES, ResourceID: RESOURCEID, ResourceData: PCVOID, ResourceLen: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1515 pub fn CM_Modify_Res_Des_Ex( 1516 prdResDes: PRES_DES, 1517 rdResDes: RES_DES, 1518 ResourceID: RESOURCEID, 1519 ResourceData: PCVOID, 1520 ResourceLen: ULONG, 1521 ulFlags: ULONG, 1522 hMachine: HMACHINE, 1523 ) -> CONFIGRET; CM_Move_DevNode( dnFromDevInst: DEVINST, dnToDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET1524 pub fn CM_Move_DevNode( 1525 dnFromDevInst: DEVINST, 1526 dnToDevInst: DEVINST, 1527 ulFlags: ULONG, 1528 ) -> CONFIGRET; CM_Move_DevNode_Ex( dnFromDevInst: DEVINST, dnToDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1529 pub fn CM_Move_DevNode_Ex( 1530 dnFromDevInst: DEVINST, 1531 dnToDevInst: DEVINST, 1532 ulFlags: ULONG, 1533 hMachine: HMACHINE, 1534 ) -> CONFIGRET; CM_Next_Range( preElement: PRANGE_LIST, pullStart: PDWORDLONG, pullEnd: PDWORDLONG, ulFlags: ULONG, ) -> CONFIGRET1535 pub fn CM_Next_Range( 1536 preElement: PRANGE_LIST, 1537 pullStart: PDWORDLONG, 1538 pullEnd: PDWORDLONG, 1539 ulFlags: ULONG, 1540 ) -> CONFIGRET; CM_Get_Next_Res_Des( prdResDes: PRES_DES, rdResDes: RES_DES, ForResource: RESOURCEID, pResourceID: PRESOURCEID, ulFlags: ULONG, ) -> CONFIGRET1541 pub fn CM_Get_Next_Res_Des( 1542 prdResDes: PRES_DES, 1543 rdResDes: RES_DES, 1544 ForResource: RESOURCEID, 1545 pResourceID: PRESOURCEID, 1546 ulFlags: ULONG, 1547 ) -> CONFIGRET; CM_Get_Next_Res_Des_Ex( prdResDes: PRES_DES, rdResDes: RES_DES, ForResource: RESOURCEID, pResourceID: PRESOURCEID, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1548 pub fn CM_Get_Next_Res_Des_Ex( 1549 prdResDes: PRES_DES, 1550 rdResDes: RES_DES, 1551 ForResource: RESOURCEID, 1552 pResourceID: PRESOURCEID, 1553 ulFlags: ULONG, 1554 hMachine: HMACHINE, 1555 ) -> CONFIGRET; CM_Open_Class_KeyA( ClassGuid: LPGUID, pszClassName: LPCSTR, samDesired: REGSAM, Disposition: REGDISPOSITION, phkClass: PHKEY, ulFlags: ULONG, ) -> CONFIGRET1556 pub fn CM_Open_Class_KeyA( 1557 ClassGuid: LPGUID, 1558 pszClassName: LPCSTR, 1559 samDesired: REGSAM, 1560 Disposition: REGDISPOSITION, 1561 phkClass: PHKEY, 1562 ulFlags: ULONG, 1563 ) -> CONFIGRET; CM_Open_Class_KeyW( ClassGuid: LPGUID, pszClassName: LPCWSTR, samDesired: REGSAM, Disposition: REGDISPOSITION, phkClass: PHKEY, ulFlags: ULONG, ) -> CONFIGRET1564 pub fn CM_Open_Class_KeyW( 1565 ClassGuid: LPGUID, 1566 pszClassName: LPCWSTR, 1567 samDesired: REGSAM, 1568 Disposition: REGDISPOSITION, 1569 phkClass: PHKEY, 1570 ulFlags: ULONG, 1571 ) -> CONFIGRET; CM_Open_Class_Key_ExA( ClassGuid: LPGUID, pszClassName: LPCSTR, samDesired: REGSAM, Disposition: REGDISPOSITION, phkClass: PHKEY, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1572 pub fn CM_Open_Class_Key_ExA( 1573 ClassGuid: LPGUID, 1574 pszClassName: LPCSTR, 1575 samDesired: REGSAM, 1576 Disposition: REGDISPOSITION, 1577 phkClass: PHKEY, 1578 ulFlags: ULONG, 1579 hMachine: HMACHINE, 1580 ) -> CONFIGRET; CM_Open_Class_Key_ExW( ClassGuid: LPGUID, pszClassName: LPCWSTR, samDesired: REGSAM, Disposition: REGDISPOSITION, phkClass: PHKEY, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1581 pub fn CM_Open_Class_Key_ExW( 1582 ClassGuid: LPGUID, 1583 pszClassName: LPCWSTR, 1584 samDesired: REGSAM, 1585 Disposition: REGDISPOSITION, 1586 phkClass: PHKEY, 1587 ulFlags: ULONG, 1588 hMachine: HMACHINE, 1589 ) -> CONFIGRET; CM_Open_DevNode_Key( dnDevNode: DEVINST, samDesired: REGSAM, ulHardwareProfile: ULONG, Disposition: REGDISPOSITION, phkDevice: PHKEY, ulFlags: ULONG, ) -> CONFIGRET1590 pub fn CM_Open_DevNode_Key( 1591 dnDevNode: DEVINST, 1592 samDesired: REGSAM, 1593 ulHardwareProfile: ULONG, 1594 Disposition: REGDISPOSITION, 1595 phkDevice: PHKEY, 1596 ulFlags: ULONG, 1597 ) -> CONFIGRET; CM_Open_DevNode_Key_Ex( dnDevNode: DEVINST, samDesired: REGSAM, ulHardwareProfile: ULONG, Disposition: REGDISPOSITION, phkDevice: PHKEY, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1598 pub fn CM_Open_DevNode_Key_Ex( 1599 dnDevNode: DEVINST, 1600 samDesired: REGSAM, 1601 ulHardwareProfile: ULONG, 1602 Disposition: REGDISPOSITION, 1603 phkDevice: PHKEY, 1604 ulFlags: ULONG, 1605 hMachine: HMACHINE, 1606 ) -> CONFIGRET; CM_Open_Device_Interface_KeyA( pszDeviceInterface: LPCSTR, samDesired: REGSAM, Disposition: REGDISPOSITION, phkDeviceInterface: PHKEY, ulFlags: ULONG, ) -> CONFIGRET1607 pub fn CM_Open_Device_Interface_KeyA( 1608 pszDeviceInterface: LPCSTR, 1609 samDesired: REGSAM, 1610 Disposition: REGDISPOSITION, 1611 phkDeviceInterface: PHKEY, 1612 ulFlags: ULONG, 1613 ) -> CONFIGRET; CM_Open_Device_Interface_KeyW( pszDeviceInterface: LPCWSTR, samDesired: REGSAM, Disposition: REGDISPOSITION, phkDeviceInterface: PHKEY, ulFlags: ULONG, ) -> CONFIGRET1614 pub fn CM_Open_Device_Interface_KeyW( 1615 pszDeviceInterface: LPCWSTR, 1616 samDesired: REGSAM, 1617 Disposition: REGDISPOSITION, 1618 phkDeviceInterface: PHKEY, 1619 ulFlags: ULONG, 1620 ) -> CONFIGRET; CM_Open_Device_Interface_Key_ExA( pszDeviceInterface: LPCSTR, samDesired: REGSAM, Disposition: REGDISPOSITION, phkDeviceInterface: PHKEY, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1621 pub fn CM_Open_Device_Interface_Key_ExA( 1622 pszDeviceInterface: LPCSTR, 1623 samDesired: REGSAM, 1624 Disposition: REGDISPOSITION, 1625 phkDeviceInterface: PHKEY, 1626 ulFlags: ULONG, 1627 hMachine: HMACHINE, 1628 ) -> CONFIGRET; CM_Open_Device_Interface_Key_ExW( pszDeviceInterface: LPCWSTR, samDesired: REGSAM, Disposition: REGDISPOSITION, phkDeviceInterface: PHKEY, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1629 pub fn CM_Open_Device_Interface_Key_ExW( 1630 pszDeviceInterface: LPCWSTR, 1631 samDesired: REGSAM, 1632 Disposition: REGDISPOSITION, 1633 phkDeviceInterface: PHKEY, 1634 ulFlags: ULONG, 1635 hMachine: HMACHINE, 1636 ) -> CONFIGRET; CM_Delete_Device_Interface_KeyA( pszDeviceInterface: LPCSTR, ulFlags: ULONG, ) -> CONFIGRET1637 pub fn CM_Delete_Device_Interface_KeyA( 1638 pszDeviceInterface: LPCSTR, 1639 ulFlags: ULONG, 1640 ) -> CONFIGRET; CM_Delete_Device_Interface_KeyW( pszDeviceInterface: LPCWSTR, ulFlags: ULONG, ) -> CONFIGRET1641 pub fn CM_Delete_Device_Interface_KeyW( 1642 pszDeviceInterface: LPCWSTR, 1643 ulFlags: ULONG, 1644 ) -> CONFIGRET; CM_Delete_Device_Interface_Key_ExA( pszDeviceInterface: LPCSTR, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1645 pub fn CM_Delete_Device_Interface_Key_ExA( 1646 pszDeviceInterface: LPCSTR, 1647 ulFlags: ULONG, 1648 hMachine: HMACHINE, 1649 ) -> CONFIGRET; CM_Delete_Device_Interface_Key_ExW( pszDeviceInterface: LPCWSTR, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1650 pub fn CM_Delete_Device_Interface_Key_ExW( 1651 pszDeviceInterface: LPCWSTR, 1652 ulFlags: ULONG, 1653 hMachine: HMACHINE, 1654 ) -> CONFIGRET; CM_Query_Arbitrator_Free_Data( pData: PVOID, DataLen: ULONG, dnDevInst: DEVINST, ResourceID: RESOURCEID, ulFlags: ULONG, ) -> CONFIGRET1655 pub fn CM_Query_Arbitrator_Free_Data( 1656 pData: PVOID, 1657 DataLen: ULONG, 1658 dnDevInst: DEVINST, 1659 ResourceID: RESOURCEID, 1660 ulFlags: ULONG, 1661 ) -> CONFIGRET; CM_Query_Arbitrator_Free_Data_Ex( pData: PVOID, DataLen: ULONG, dnDevInst: DEVINST, ResourceID: RESOURCEID, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1662 pub fn CM_Query_Arbitrator_Free_Data_Ex( 1663 pData: PVOID, 1664 DataLen: ULONG, 1665 dnDevInst: DEVINST, 1666 ResourceID: RESOURCEID, 1667 ulFlags: ULONG, 1668 hMachine: HMACHINE, 1669 ) -> CONFIGRET; CM_Query_Arbitrator_Free_Size( pulSize: PULONG, dnDevInst: DEVINST, ResourceID: RESOURCEID, ulFlags: ULONG, ) -> CONFIGRET1670 pub fn CM_Query_Arbitrator_Free_Size( 1671 pulSize: PULONG, 1672 dnDevInst: DEVINST, 1673 ResourceID: RESOURCEID, 1674 ulFlags: ULONG, 1675 ) -> CONFIGRET; CM_Query_Arbitrator_Free_Size_Ex( pulSize: PULONG, dnDevInst: DEVINST, ResourceID: RESOURCEID, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1676 pub fn CM_Query_Arbitrator_Free_Size_Ex( 1677 pulSize: PULONG, 1678 dnDevInst: DEVINST, 1679 ResourceID: RESOURCEID, 1680 ulFlags: ULONG, 1681 hMachine: HMACHINE, 1682 ) -> CONFIGRET; CM_Query_Remove_SubTree( dnAncestor: DEVINST, ulFlags: ULONG, ) -> CONFIGRET1683 pub fn CM_Query_Remove_SubTree( 1684 dnAncestor: DEVINST, 1685 ulFlags: ULONG, 1686 ) -> CONFIGRET; CM_Query_Remove_SubTree_Ex( dnAncestor: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1687 pub fn CM_Query_Remove_SubTree_Ex( 1688 dnAncestor: DEVINST, 1689 ulFlags: ULONG, 1690 hMachine: HMACHINE, 1691 ) -> CONFIGRET; CM_Query_And_Remove_SubTreeA( dnAncestor: DEVINST, pVetoType: PPNP_VETO_TYPE, pszVetoName: LPSTR, ulNameLength: ULONG, ulFlags: ULONG, ) -> CONFIGRET1692 pub fn CM_Query_And_Remove_SubTreeA( 1693 dnAncestor: DEVINST, 1694 pVetoType: PPNP_VETO_TYPE, 1695 pszVetoName: LPSTR, 1696 ulNameLength: ULONG, 1697 ulFlags: ULONG, 1698 ) -> CONFIGRET; CM_Query_And_Remove_SubTree_ExA( dnAncestor: DEVINST, pVetoType: PPNP_VETO_TYPE, pszVetoName: LPSTR, ulNameLength: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1699 pub fn CM_Query_And_Remove_SubTree_ExA( 1700 dnAncestor: DEVINST, 1701 pVetoType: PPNP_VETO_TYPE, 1702 pszVetoName: LPSTR, 1703 ulNameLength: ULONG, 1704 ulFlags: ULONG, 1705 hMachine: HMACHINE, 1706 ) -> CONFIGRET; CM_Query_And_Remove_SubTreeW( dnAncestor: DEVINST, pVetoType: PPNP_VETO_TYPE, pszVetoName: LPWSTR, ulNameLength: ULONG, ulFlags: ULONG, ) -> CONFIGRET1707 pub fn CM_Query_And_Remove_SubTreeW( 1708 dnAncestor: DEVINST, 1709 pVetoType: PPNP_VETO_TYPE, 1710 pszVetoName: LPWSTR, 1711 ulNameLength: ULONG, 1712 ulFlags: ULONG, 1713 ) -> CONFIGRET; CM_Query_And_Remove_SubTree_ExW( dnAncestor: DEVINST, pVetoType: PPNP_VETO_TYPE, pszVetoName: LPWSTR, ulNameLength: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1714 pub fn CM_Query_And_Remove_SubTree_ExW( 1715 dnAncestor: DEVINST, 1716 pVetoType: PPNP_VETO_TYPE, 1717 pszVetoName: LPWSTR, 1718 ulNameLength: ULONG, 1719 ulFlags: ULONG, 1720 hMachine: HMACHINE, 1721 ) -> CONFIGRET; CM_Request_Device_EjectA( dnDevInst: DEVINST, pVetoType: PPNP_VETO_TYPE, pszVetoName: LPSTR, ulNameLength: ULONG, ulFlags: ULONG, ) -> CONFIGRET1722 pub fn CM_Request_Device_EjectA( 1723 dnDevInst: DEVINST, 1724 pVetoType: PPNP_VETO_TYPE, 1725 pszVetoName: LPSTR, 1726 ulNameLength: ULONG, 1727 ulFlags: ULONG, 1728 ) -> CONFIGRET; CM_Request_Device_Eject_ExA( dnDevInst: DEVINST, pVetoType: PPNP_VETO_TYPE, pszVetoName: LPSTR, ulNameLength: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1729 pub fn CM_Request_Device_Eject_ExA( 1730 dnDevInst: DEVINST, 1731 pVetoType: PPNP_VETO_TYPE, 1732 pszVetoName: LPSTR, 1733 ulNameLength: ULONG, 1734 ulFlags: ULONG, 1735 hMachine: HMACHINE, 1736 ) -> CONFIGRET; CM_Request_Device_EjectW( dnDevInst: DEVINST, pVetoType: PPNP_VETO_TYPE, pszVetoName: LPWSTR, ulNameLength: ULONG, ulFlags: ULONG, ) -> CONFIGRET1737 pub fn CM_Request_Device_EjectW( 1738 dnDevInst: DEVINST, 1739 pVetoType: PPNP_VETO_TYPE, 1740 pszVetoName: LPWSTR, 1741 ulNameLength: ULONG, 1742 ulFlags: ULONG, 1743 ) -> CONFIGRET; CM_Request_Device_Eject_ExW( dnDevInst: DEVINST, pVetoType: PPNP_VETO_TYPE, pszVetoName: LPWSTR, ulNameLength: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1744 pub fn CM_Request_Device_Eject_ExW( 1745 dnDevInst: DEVINST, 1746 pVetoType: PPNP_VETO_TYPE, 1747 pszVetoName: LPWSTR, 1748 ulNameLength: ULONG, 1749 ulFlags: ULONG, 1750 hMachine: HMACHINE, 1751 ) -> CONFIGRET; CM_Reenumerate_DevNode( dnDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET1752 pub fn CM_Reenumerate_DevNode( 1753 dnDevInst: DEVINST, 1754 ulFlags: ULONG, 1755 ) -> CONFIGRET; CM_Reenumerate_DevNode_Ex( dnDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1756 pub fn CM_Reenumerate_DevNode_Ex( 1757 dnDevInst: DEVINST, 1758 ulFlags: ULONG, 1759 hMachine: HMACHINE, 1760 ) -> CONFIGRET; CM_Register_Device_InterfaceA( dnDevInst: DEVINST, InterfaceClassGuid: LPGUID, pszReference: LPCSTR, pszDeviceInterface: LPSTR, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET1761 pub fn CM_Register_Device_InterfaceA( 1762 dnDevInst: DEVINST, 1763 InterfaceClassGuid: LPGUID, 1764 pszReference: LPCSTR, 1765 pszDeviceInterface: LPSTR, 1766 pulLength: PULONG, 1767 ulFlags: ULONG, 1768 ) -> CONFIGRET; CM_Register_Device_InterfaceW( dnDevInst: DEVINST, InterfaceClassGuid: LPGUID, pszReference: LPCWSTR, pszDeviceInterface: LPWSTR, pulLength: PULONG, ulFlags: ULONG, ) -> CONFIGRET1769 pub fn CM_Register_Device_InterfaceW( 1770 dnDevInst: DEVINST, 1771 InterfaceClassGuid: LPGUID, 1772 pszReference: LPCWSTR, 1773 pszDeviceInterface: LPWSTR, 1774 pulLength: PULONG, 1775 ulFlags: ULONG, 1776 ) -> CONFIGRET; CM_Register_Device_Interface_ExA( dnDevInst: DEVINST, InterfaceClassGuid: LPGUID, pszReference: LPCSTR, pszDeviceInterface: LPSTR, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1777 pub fn CM_Register_Device_Interface_ExA( 1778 dnDevInst: DEVINST, 1779 InterfaceClassGuid: LPGUID, 1780 pszReference: LPCSTR, 1781 pszDeviceInterface: LPSTR, 1782 pulLength: PULONG, 1783 ulFlags: ULONG, 1784 hMachine: HMACHINE, 1785 ) -> CONFIGRET; CM_Register_Device_Interface_ExW( dnDevInst: DEVINST, InterfaceClassGuid: LPGUID, pszReference: LPCWSTR, pszDeviceInterface: LPWSTR, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1786 pub fn CM_Register_Device_Interface_ExW( 1787 dnDevInst: DEVINST, 1788 InterfaceClassGuid: LPGUID, 1789 pszReference: LPCWSTR, 1790 pszDeviceInterface: LPWSTR, 1791 pulLength: PULONG, 1792 ulFlags: ULONG, 1793 hMachine: HMACHINE, 1794 ) -> CONFIGRET; CM_Set_DevNode_Problem_Ex( dnDevInst: DEVINST, ulProblem: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1795 pub fn CM_Set_DevNode_Problem_Ex( 1796 dnDevInst: DEVINST, 1797 ulProblem: ULONG, 1798 ulFlags: ULONG, 1799 hMachine: HMACHINE, 1800 ) -> CONFIGRET; CM_Set_DevNode_Problem( dnDevInst: DEVINST, ulProblem: ULONG, ulFlags: ULONG, ) -> CONFIGRET1801 pub fn CM_Set_DevNode_Problem( 1802 dnDevInst: DEVINST, 1803 ulProblem: ULONG, 1804 ulFlags: ULONG, 1805 ) -> CONFIGRET; CM_Unregister_Device_InterfaceA( pszDeviceInterface: LPCSTR, ulFlags: ULONG, ) -> CONFIGRET1806 pub fn CM_Unregister_Device_InterfaceA( 1807 pszDeviceInterface: LPCSTR, 1808 ulFlags: ULONG, 1809 ) -> CONFIGRET; CM_Unregister_Device_InterfaceW( pszDeviceInterface: LPCWSTR, ulFlags: ULONG, ) -> CONFIGRET1810 pub fn CM_Unregister_Device_InterfaceW( 1811 pszDeviceInterface: LPCWSTR, 1812 ulFlags: ULONG, 1813 ) -> CONFIGRET; CM_Unregister_Device_Interface_ExA( pszDeviceInterface: LPCSTR, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1814 pub fn CM_Unregister_Device_Interface_ExA( 1815 pszDeviceInterface: LPCSTR, 1816 ulFlags: ULONG, 1817 hMachine: HMACHINE, 1818 ) -> CONFIGRET; CM_Unregister_Device_Interface_ExW( pszDeviceInterface: LPCWSTR, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1819 pub fn CM_Unregister_Device_Interface_ExW( 1820 pszDeviceInterface: LPCWSTR, 1821 ulFlags: ULONG, 1822 hMachine: HMACHINE, 1823 ) -> CONFIGRET; CM_Register_Device_Driver( dnDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET1824 pub fn CM_Register_Device_Driver( 1825 dnDevInst: DEVINST, 1826 ulFlags: ULONG, 1827 ) -> CONFIGRET; CM_Register_Device_Driver_Ex( dnDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1828 pub fn CM_Register_Device_Driver_Ex( 1829 dnDevInst: DEVINST, 1830 ulFlags: ULONG, 1831 hMachine: HMACHINE, 1832 ) -> CONFIGRET; CM_Remove_SubTree( dnAncestor: DEVINST, ulFlags: ULONG, ) -> CONFIGRET1833 pub fn CM_Remove_SubTree( 1834 dnAncestor: DEVINST, 1835 ulFlags: ULONG, 1836 ) -> CONFIGRET; CM_Remove_SubTree_Ex( dnAncestor: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1837 pub fn CM_Remove_SubTree_Ex( 1838 dnAncestor: DEVINST, 1839 ulFlags: ULONG, 1840 hMachine: HMACHINE, 1841 ) -> CONFIGRET; CM_Set_DevNode_Registry_PropertyA( dnDevInst: DEVINST, ulProperty: ULONG, Buffer: PCVOID, ulLength: ULONG, ulFlags: ULONG, ) -> CONFIGRET1842 pub fn CM_Set_DevNode_Registry_PropertyA( 1843 dnDevInst: DEVINST, 1844 ulProperty: ULONG, 1845 Buffer: PCVOID, 1846 ulLength: ULONG, 1847 ulFlags: ULONG, 1848 ) -> CONFIGRET; CM_Set_DevNode_Registry_PropertyW( dnDevInst: DEVINST, ulProperty: ULONG, Buffer: PCVOID, ulLength: ULONG, ulFlags: ULONG, ) -> CONFIGRET1849 pub fn CM_Set_DevNode_Registry_PropertyW( 1850 dnDevInst: DEVINST, 1851 ulProperty: ULONG, 1852 Buffer: PCVOID, 1853 ulLength: ULONG, 1854 ulFlags: ULONG, 1855 ) -> CONFIGRET; CM_Set_DevNode_Registry_Property_ExA( dnDevInst: DEVINST, ulProperty: ULONG, Buffer: PCVOID, ulLength: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1856 pub fn CM_Set_DevNode_Registry_Property_ExA( 1857 dnDevInst: DEVINST, 1858 ulProperty: ULONG, 1859 Buffer: PCVOID, 1860 ulLength: ULONG, 1861 ulFlags: ULONG, 1862 hMachine: HMACHINE, 1863 ) -> CONFIGRET; CM_Set_DevNode_Registry_Property_ExW( dnDevInst: DEVINST, ulProperty: ULONG, Buffer: PCVOID, ulLength: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1864 pub fn CM_Set_DevNode_Registry_Property_ExW( 1865 dnDevInst: DEVINST, 1866 ulProperty: ULONG, 1867 Buffer: PCVOID, 1868 ulLength: ULONG, 1869 ulFlags: ULONG, 1870 hMachine: HMACHINE, 1871 ) -> CONFIGRET; CM_Is_Dock_Station_Present( pbPresent: PBOOL, ) -> CONFIGRET1872 pub fn CM_Is_Dock_Station_Present( 1873 pbPresent: PBOOL, 1874 ) -> CONFIGRET; CM_Is_Dock_Station_Present_Ex( pbPresent: PBOOL, hMachine: HMACHINE, ) -> CONFIGRET1875 pub fn CM_Is_Dock_Station_Present_Ex( 1876 pbPresent: PBOOL, 1877 hMachine: HMACHINE, 1878 ) -> CONFIGRET; CM_Request_Eject_PC() -> CONFIGRET1879 pub fn CM_Request_Eject_PC() -> CONFIGRET; CM_Request_Eject_PC_Ex( hMachine: HMACHINE, ) -> CONFIGRET1880 pub fn CM_Request_Eject_PC_Ex( 1881 hMachine: HMACHINE, 1882 ) -> CONFIGRET; CM_Set_HW_Prof_FlagsA( pDeviceID: DEVINSTID_A, ulConfig: ULONG, ulValue: ULONG, ulFlags: ULONG, ) -> CONFIGRET1883 pub fn CM_Set_HW_Prof_FlagsA( 1884 pDeviceID: DEVINSTID_A, 1885 ulConfig: ULONG, 1886 ulValue: ULONG, 1887 ulFlags: ULONG, 1888 ) -> CONFIGRET; CM_Set_HW_Prof_FlagsW( pDeviceID: DEVINSTID_W, ulConfig: ULONG, ulValue: ULONG, ulFlags: ULONG, ) -> CONFIGRET1889 pub fn CM_Set_HW_Prof_FlagsW( 1890 pDeviceID: DEVINSTID_W, 1891 ulConfig: ULONG, 1892 ulValue: ULONG, 1893 ulFlags: ULONG, 1894 ) -> CONFIGRET; CM_Set_HW_Prof_Flags_ExA( pDeviceID: DEVINSTID_A, ulConfig: ULONG, ulValue: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1895 pub fn CM_Set_HW_Prof_Flags_ExA( 1896 pDeviceID: DEVINSTID_A, 1897 ulConfig: ULONG, 1898 ulValue: ULONG, 1899 ulFlags: ULONG, 1900 hMachine: HMACHINE, 1901 ) -> CONFIGRET; CM_Set_HW_Prof_Flags_ExW( pDeviceID: DEVINSTID_A, ulConfig: ULONG, ulValue: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1902 pub fn CM_Set_HW_Prof_Flags_ExW( 1903 pDeviceID: DEVINSTID_A, 1904 ulConfig: ULONG, 1905 ulValue: ULONG, 1906 ulFlags: ULONG, 1907 hMachine: HMACHINE, 1908 ) -> CONFIGRET; CM_Setup_DevNode( dnDevInst: DEVINST, ulFlags: ULONG, ) -> CONFIGRET1909 pub fn CM_Setup_DevNode( 1910 dnDevInst: DEVINST, 1911 ulFlags: ULONG, 1912 ) -> CONFIGRET; CM_Setup_DevNode_Ex( dnDevInst: DEVINST, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1913 pub fn CM_Setup_DevNode_Ex( 1914 dnDevInst: DEVINST, 1915 ulFlags: ULONG, 1916 hMachine: HMACHINE, 1917 ) -> CONFIGRET; CM_Test_Range_Available( ullStartValue: DWORDLONG, ullEndValue: DWORDLONG, rlh: RANGE_LIST, ulFlags: ULONG, ) -> CONFIGRET1918 pub fn CM_Test_Range_Available( 1919 ullStartValue: DWORDLONG, 1920 ullEndValue: DWORDLONG, 1921 rlh: RANGE_LIST, 1922 ulFlags: ULONG, 1923 ) -> CONFIGRET; CM_Uninstall_DevNode( dnDevInst: DEVNODE, ulFlags: ULONG, ) -> CONFIGRET1924 pub fn CM_Uninstall_DevNode( 1925 dnDevInst: DEVNODE, 1926 ulFlags: ULONG, 1927 ) -> CONFIGRET; CM_Uninstall_DevNode_Ex( dnDevInst: DEVNODE, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1928 pub fn CM_Uninstall_DevNode_Ex( 1929 dnDevInst: DEVNODE, 1930 ulFlags: ULONG, 1931 hMachine: HMACHINE, 1932 ) -> CONFIGRET; CM_Run_Detection( ulFlags: ULONG, ) -> CONFIGRET1933 pub fn CM_Run_Detection( 1934 ulFlags: ULONG, 1935 ) -> CONFIGRET; CM_Run_Detection_Ex( ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1936 pub fn CM_Run_Detection_Ex( 1937 ulFlags: ULONG, 1938 hMachine: HMACHINE, 1939 ) -> CONFIGRET; CM_Set_HW_Prof( ulHardwareProfile: ULONG, ulFlags: ULONG, ) -> CONFIGRET1940 pub fn CM_Set_HW_Prof( 1941 ulHardwareProfile: ULONG, 1942 ulFlags: ULONG, 1943 ) -> CONFIGRET; CM_Set_HW_Prof_Ex( ulHardwareProfile: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1944 pub fn CM_Set_HW_Prof_Ex( 1945 ulHardwareProfile: ULONG, 1946 ulFlags: ULONG, 1947 hMachine: HMACHINE, 1948 ) -> CONFIGRET; CM_Query_Resource_Conflict_List( pclConflictList: PCONFLICT_LIST, dnDevInst: DEVINST, ResourceID: RESOURCEID, ResourceData: PCVOID, ResourceLen: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1949 pub fn CM_Query_Resource_Conflict_List( 1950 pclConflictList: PCONFLICT_LIST, 1951 dnDevInst: DEVINST, 1952 ResourceID: RESOURCEID, 1953 ResourceData: PCVOID, 1954 ResourceLen: ULONG, 1955 ulFlags: ULONG, 1956 hMachine: HMACHINE, 1957 ) -> CONFIGRET; CM_Free_Resource_Conflict_Handle( clConflictList: CONFLICT_LIST, ) -> CONFIGRET1958 pub fn CM_Free_Resource_Conflict_Handle( 1959 clConflictList: CONFLICT_LIST, 1960 ) -> CONFIGRET; CM_Get_Resource_Conflict_Count( clConflictList: CONFLICT_LIST, pulCount: PULONG, ) -> CONFIGRET1961 pub fn CM_Get_Resource_Conflict_Count( 1962 clConflictList: CONFLICT_LIST, 1963 pulCount: PULONG, 1964 ) -> CONFIGRET; CM_Get_Resource_Conflict_DetailsA( clConflictList: CONFLICT_LIST, ulIndex: ULONG, pConflictDetails: PCONFLICT_DETAILS_A, ) -> CONFIGRET1965 pub fn CM_Get_Resource_Conflict_DetailsA( 1966 clConflictList: CONFLICT_LIST, 1967 ulIndex: ULONG, 1968 pConflictDetails: PCONFLICT_DETAILS_A, 1969 ) -> CONFIGRET; CM_Get_Resource_Conflict_DetailsW( clConflictList: CONFLICT_LIST, ulIndex: ULONG, pConflictDetails: PCONFLICT_DETAILS_W, ) -> CONFIGRET1970 pub fn CM_Get_Resource_Conflict_DetailsW( 1971 clConflictList: CONFLICT_LIST, 1972 ulIndex: ULONG, 1973 pConflictDetails: PCONFLICT_DETAILS_W, 1974 ) -> CONFIGRET; CM_Get_Class_Registry_PropertyW( ClassGuid: LPGUID, ulProperty: ULONG, pulRegDataType: PULONG, Buffer: PVOID, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1975 pub fn CM_Get_Class_Registry_PropertyW( 1976 ClassGuid: LPGUID, 1977 ulProperty: ULONG, 1978 pulRegDataType: PULONG, 1979 Buffer: PVOID, 1980 pulLength: PULONG, 1981 ulFlags: ULONG, 1982 hMachine: HMACHINE, 1983 ) -> CONFIGRET; CM_Set_Class_Registry_PropertyW( ClassGuid: LPGUID, ulProperty: ULONG, Buffer: PCVOID, ulLength: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1984 pub fn CM_Set_Class_Registry_PropertyW( 1985 ClassGuid: LPGUID, 1986 ulProperty: ULONG, 1987 Buffer: PCVOID, 1988 ulLength: ULONG, 1989 ulFlags: ULONG, 1990 hMachine: HMACHINE, 1991 ) -> CONFIGRET; CM_Get_Class_Registry_PropertyA( ClassGuid: LPGUID, ulProperty: ULONG, pulRegDataType: PULONG, Buffer: PVOID, pulLength: PULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET1992 pub fn CM_Get_Class_Registry_PropertyA( 1993 ClassGuid: LPGUID, 1994 ulProperty: ULONG, 1995 pulRegDataType: PULONG, 1996 Buffer: PVOID, 1997 pulLength: PULONG, 1998 ulFlags: ULONG, 1999 hMachine: HMACHINE, 2000 ) -> CONFIGRET; CM_Set_Class_Registry_PropertyA( ClassGuid: LPGUID, ulProperty: ULONG, Buffer: PCVOID, ulLength: ULONG, ulFlags: ULONG, hMachine: HMACHINE, ) -> CONFIGRET2001 pub fn CM_Set_Class_Registry_PropertyA( 2002 ClassGuid: LPGUID, 2003 ulProperty: ULONG, 2004 Buffer: PCVOID, 2005 ulLength: ULONG, 2006 ulFlags: ULONG, 2007 hMachine: HMACHINE, 2008 ) -> CONFIGRET; CMP_WaitNoPendingInstallEvents( dwTimeout: DWORD, ) -> DWORD2009 pub fn CMP_WaitNoPendingInstallEvents( 2010 dwTimeout: DWORD, 2011 ) -> DWORD; 2012 } 2013 pub const CR_SUCCESS: CONFIGRET = 0x00000000; 2014 pub const CR_DEFAULT: CONFIGRET = 0x00000001; 2015 pub const CR_OUT_OF_MEMORY: CONFIGRET = 0x00000002; 2016 pub const CR_INVALID_POINTER: CONFIGRET = 0x00000003; 2017 pub const CR_INVALID_FLAG: CONFIGRET = 0x00000004; 2018 pub const CR_INVALID_DEVNODE: CONFIGRET = 0x00000005; 2019 pub const CR_INVALID_DEVINST: CONFIGRET = CR_INVALID_DEVNODE; 2020 pub const CR_INVALID_RES_DES: CONFIGRET = 0x00000006; 2021 pub const CR_INVALID_LOG_CONF: CONFIGRET = 0x00000007; 2022 pub const CR_INVALID_ARBITRATOR: CONFIGRET = 0x00000008; 2023 pub const CR_INVALID_NODELIST: CONFIGRET = 0x00000009; 2024 pub const CR_DEVNODE_HAS_REQS: CONFIGRET = 0x0000000A; 2025 pub const CR_DEVINST_HAS_REQS: CONFIGRET = CR_DEVNODE_HAS_REQS; 2026 pub const CR_INVALID_RESOURCEID: CONFIGRET = 0x0000000B; 2027 pub const CR_DLVXD_NOT_FOUND: CONFIGRET = 0x0000000C; 2028 pub const CR_NO_SUCH_DEVNODE: CONFIGRET = 0x0000000D; 2029 pub const CR_NO_SUCH_DEVINST: CONFIGRET = CR_NO_SUCH_DEVNODE; 2030 pub const CR_NO_MORE_LOG_CONF: CONFIGRET = 0x0000000E; 2031 pub const CR_NO_MORE_RES_DES: CONFIGRET = 0x0000000F; 2032 pub const CR_ALREADY_SUCH_DEVNODE: CONFIGRET = 0x00000010; 2033 pub const CR_ALREADY_SUCH_DEVINST: CONFIGRET = CR_ALREADY_SUCH_DEVNODE; 2034 pub const CR_INVALID_RANGE_LIST: CONFIGRET = 0x00000011; 2035 pub const CR_INVALID_RANGE: CONFIGRET = 0x00000012; 2036 pub const CR_FAILURE: CONFIGRET = 0x00000013; 2037 pub const CR_NO_SUCH_LOGICAL_DEV: CONFIGRET = 0x00000014; 2038 pub const CR_CREATE_BLOCKED: CONFIGRET = 0x00000015; 2039 pub const CR_NOT_SYSTEM_VM: CONFIGRET = 0x00000016; 2040 pub const CR_REMOVE_VETOED: CONFIGRET = 0x00000017; 2041 pub const CR_APM_VETOED: CONFIGRET = 0x00000018; 2042 pub const CR_INVALID_LOAD_TYPE: CONFIGRET = 0x00000019; 2043 pub const CR_BUFFER_SMALL: CONFIGRET = 0x0000001A; 2044 pub const CR_NO_ARBITRATOR: CONFIGRET = 0x0000001B; 2045 pub const CR_NO_REGISTRY_HANDLE: CONFIGRET = 0x0000001C; 2046 pub const CR_REGISTRY_ERROR: CONFIGRET = 0x0000001D; 2047 pub const CR_INVALID_DEVICE_ID: CONFIGRET = 0x0000001E; 2048 pub const CR_INVALID_DATA: CONFIGRET = 0x0000001F; 2049 pub const CR_INVALID_API: CONFIGRET = 0x00000020; 2050 pub const CR_DEVLOADER_NOT_READY: CONFIGRET = 0x00000021; 2051 pub const CR_NEED_RESTART: CONFIGRET = 0x00000022; 2052 pub const CR_NO_MORE_HW_PROFILES: CONFIGRET = 0x00000023; 2053 pub const CR_DEVICE_NOT_THERE: CONFIGRET = 0x00000024; 2054 pub const CR_NO_SUCH_VALUE: CONFIGRET = 0x00000025; 2055 pub const CR_WRONG_TYPE: CONFIGRET = 0x00000026; 2056 pub const CR_INVALID_PRIORITY: CONFIGRET = 0x00000027; 2057 pub const CR_NOT_DISABLEABLE: CONFIGRET = 0x00000028; 2058 pub const CR_FREE_RESOURCES: CONFIGRET = 0x00000029; 2059 pub const CR_QUERY_VETOED: CONFIGRET = 0x0000002A; 2060 pub const CR_CANT_SHARE_IRQ: CONFIGRET = 0x0000002B; 2061 pub const CR_NO_DEPENDENT: CONFIGRET = 0x0000002C; 2062 pub const CR_SAME_RESOURCES: CONFIGRET = 0x0000002D; 2063 pub const CR_NO_SUCH_REGISTRY_KEY: CONFIGRET = 0x0000002E; 2064 pub const CR_INVALID_MACHINENAME: CONFIGRET = 0x0000002F; 2065 pub const CR_REMOTE_COMM_FAILURE: CONFIGRET = 0x00000030; 2066 pub const CR_MACHINE_UNAVAILABLE: CONFIGRET = 0x00000031; 2067 pub const CR_NO_CM_SERVICES: CONFIGRET = 0x00000032; 2068 pub const CR_ACCESS_DENIED: CONFIGRET = 0x00000033; 2069 pub const CR_CALL_NOT_IMPLEMENTED: CONFIGRET = 0x00000034; 2070 pub const CR_INVALID_PROPERTY: CONFIGRET = 0x00000035; 2071 pub const CR_DEVICE_INTERFACE_ACTIVE: CONFIGRET = 0x00000036; 2072 pub const CR_NO_SUCH_DEVICE_INTERFACE: CONFIGRET = 0x00000037; 2073 pub const CR_INVALID_REFERENCE_STRING: CONFIGRET = 0x00000038; 2074 pub const CR_INVALID_CONFLICT_LIST: CONFIGRET = 0x00000039; 2075 pub const CR_INVALID_INDEX: CONFIGRET = 0x0000003A; 2076 pub const CR_INVALID_STRUCTURE_SIZE: CONFIGRET = 0x0000003B; 2077 pub const NUM_CR_RESULTS: CONFIGRET = 0x0000003C; 2078