| /* |
| * cfgmgr32.h |
| * |
| * PnP configuration manager |
| * |
| * This file is part of the w32api package. |
| * |
| * Contributors: |
| * Created by Casper S. Hornstrup <chorns@users.sourceforge.net> |
| * |
| * THIS SOFTWARE IS NOT COPYRIGHTED |
| * |
| * This source code is offered for use in the public domain. You may |
| * use, modify or distribute it freely. |
| * |
| * This code is distributed in the hope that it will be useful but |
| * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY |
| * DISCLAIMED. This includes but is not limited to warranties of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
| * |
| */ |
| |
| #ifndef __CFGMGR32_H |
| #define __CFGMGR32_H |
| |
| #if __GNUC__ >=3 |
| #pragma GCC system_header |
| #endif |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #include "ntddk.h" |
| |
| #if defined(_CFGMGR32_) |
| #define CMAPI DECLSPEC_EXPORT |
| #else |
| #define CMAPI DECLSPEC_IMPORT |
| #endif |
| |
| #include "cfg.h" |
| |
| #include <pshpack1.h> |
| |
| #define CR_SUCCESS 0x00000000 |
| #define CR_DEFAULT 0x00000001 |
| #define CR_OUT_OF_MEMORY 0x00000002 |
| #define CR_INVALID_POINTER 0x00000003 |
| #define CR_INVALID_FLAG 0x00000004 |
| #define CR_INVALID_DEVNODE 0x00000005 |
| #define CR_INVALID_DEVINST CR_INVALID_DEVNODE |
| #define CR_INVALID_RES_DES 0x00000006 |
| #define CR_INVALID_LOG_CONF 0x00000007 |
| #define CR_INVALID_ARBITRATOR 0x00000008 |
| #define CR_INVALID_NODELIST 0x00000009 |
| #define CR_DEVNODE_HAS_REQS 0x0000000A |
| #define CR_DEVINST_HAS_REQS CR_DEVNODE_HAS_REQS |
| #define CR_INVALID_RESOURCEID 0x0000000B |
| #define CR_DLVXD_NOT_FOUND 0x0000000C |
| #define CR_NO_SUCH_DEVNODE 0x0000000D |
| #define CR_NO_SUCH_DEVINST CR_NO_SUCH_DEVNODE |
| #define CR_NO_MORE_LOG_CONF 0x0000000E |
| #define CR_NO_MORE_RES_DES 0x0000000F |
| #define CR_ALREADY_SUCH_DEVNODE 0x00000010 |
| #define CR_ALREADY_SUCH_DEVINST CR_ALREADY_SUCH_DEVNODE |
| #define CR_INVALID_RANGE_LIST 0x00000011 |
| #define CR_INVALID_RANGE 0x00000012 |
| #define CR_FAILURE 0x00000013 |
| #define CR_NO_SUCH_LOGICAL_DEV 0x00000014 |
| #define CR_CREATE_BLOCKED 0x00000015 |
| #define CR_NOT_SYSTEM_VM 0x00000016 |
| #define CR_REMOVE_VETOED 0x00000017 |
| #define CR_APM_VETOED 0x00000018 |
| #define CR_INVALID_LOAD_TYPE 0x00000019 |
| #define CR_BUFFER_SMALL 0x0000001A |
| #define CR_NO_ARBITRATOR 0x0000001B |
| #define CR_NO_REGISTRY_HANDLE 0x0000001C |
| #define CR_REGISTRY_ERROR 0x0000001D |
| #define CR_INVALID_DEVICE_ID 0x0000001E |
| #define CR_INVALID_DATA 0x0000001F |
| #define CR_INVALID_API 0x00000020 |
| #define CR_DEVLOADER_NOT_READY 0x00000021 |
| #define CR_NEED_RESTART 0x00000022 |
| #define CR_NO_MORE_HW_PROFILES 0x00000023 |
| #define CR_DEVICE_NOT_THERE 0x00000024 |
| #define CR_NO_SUCH_VALUE 0x00000025 |
| #define CR_WRONG_TYPE 0x00000026 |
| #define CR_INVALID_PRIORITY 0x00000027 |
| #define CR_NOT_DISABLEABLE 0x00000028 |
| #define CR_FREE_RESOURCES 0x00000029 |
| #define CR_QUERY_VETOED 0x0000002A |
| #define CR_CANT_SHARE_IRQ 0x0000002B |
| #define CR_NO_DEPENDENT 0x0000002C |
| #define CR_SAME_RESOURCES 0x0000002D |
| #define CR_NO_SUCH_REGISTRY_KEY 0x0000002E |
| #define CR_INVALID_MACHINENAME 0x0000002F |
| #define CR_REMOTE_COMM_FAILURE 0x00000030 |
| #define CR_MACHINE_UNAVAILABLE 0x00000031 |
| #define CR_NO_CM_SERVICES 0x00000032 |
| #define CR_ACCESS_DENIED 0x00000033 |
| #define CR_CALL_NOT_IMPLEMENTED 0x00000034 |
| #define CR_INVALID_PROPERTY 0x00000035 |
| #define CR_DEVICE_INTERFACE_ACTIVE 0x00000036 |
| #define CR_NO_SUCH_DEVICE_INTERFACE 0x00000037 |
| #define CR_INVALID_REFERENCE_STRING 0x00000038 |
| #define CR_INVALID_CONFLICT_LIST 0x00000039 |
| #define CR_INVALID_INDEX 0x0000003A |
| #define CR_INVALID_STRUCTURE_SIZE 0x0000003B |
| |
| |
| typedef DWORD RETURN_TYPE; |
| typedef RETURN_TYPE CONFIGRET; |
| |
| typedef HANDLE HMACHINE; |
| typedef HMACHINE *PHMACHINE; |
| |
| typedef DWORD_PTR RES_DES; |
| typedef RES_DES *PRES_DES; |
| |
| typedef DWORD_PTR RANGE_ELEMENT; |
| typedef RANGE_ELEMENT *PRANGE_ELEMENT; |
| |
| typedef ULONG_PTR CONFLICT_LIST; |
| typedef CONFLICT_LIST *PCONFLICT_LIST; |
| |
| typedef DWORD_PTR LOG_CONF; |
| typedef LOG_CONF *PLOG_CONF; |
| |
| typedef ULONG PRIORITY; |
| typedef PRIORITY *PPRIORITY; |
| |
| typedef DWORD_PTR RANGE_LIST; |
| typedef RANGE_LIST *PRANGE_LIST; |
| |
| typedef DWORD DEVNODE, DEVINST; |
| typedef DEVNODE *PDEVNODE, *PDEVINST; |
| |
| typedef CHAR *DEVNODEID_A, *DEVINSTID_A; |
| typedef WCHAR *DEVNODEID_W, *DEVINSTID_W; |
| |
| #ifdef UNICODE |
| typedef DEVNODEID_W DEVNODEID; |
| typedef DEVINSTID_W DEVINSTID; |
| #else |
| typedef DEVNODEID_A DEVNODEID; |
| typedef DEVINSTID_A DEVINSTID; |
| #endif |
| |
| typedef ULONG REGDISPOSITION; |
| |
| typedef ULONG RESOURCEID; |
| typedef RESOURCEID *PRESOURCEID; |
| |
| #define CM_RESDES_WIDTH_DEFAULT 0x00000000 |
| #define CM_RESDES_WIDTH_32 0x00000001 |
| #define CM_RESDES_WIDTH_64 0x00000002 |
| #define CM_RESDES_WIDTH_BITS 0x00000003 |
| |
| |
| #define MAX_CONFIG_VALUE 9999 |
| #define MAX_INSTANCE_VALUE 9999 |
| |
| #define MAX_DEVICE_ID_LEN 200 |
| #define MAX_DEVNODE_ID_LEN MAX_DEVICE_ID_LEN |
| |
| #define MAX_CLASS_NAME_LEN 32 |
| #define MAX_GUID_STRING_LEN 39 |
| #define MAX_PROFILE_LEN 80 |
| |
| |
| #define ResType_All 0x00000000 |
| #define ResType_None 0x00000000 |
| #define ResType_Mem 0x00000001 |
| #define ResType_IO 0x00000002 |
| #define ResType_DMA 0x00000003 |
| #define ResType_IRQ 0x00000004 |
| #define ResType_DoNotUse 0x00000005 |
| #define ResType_BusNumber 0x00000006 |
| #define ResType_MAX 0x00000006 |
| #define ResType_Ignored_Bit 0x00008000 |
| #define ResType_ClassSpecific 0x0000FFFF |
| #define ResType_Reserved 0x00008000 |
| #define ResType_DevicePrivate 0x00008001 |
| #define ResType_PcCardConfig 0x00008002 |
| #define ResType_MfCardConfig 0x00008003 |
| |
| #define CM_GETIDLIST_FILTER_NONE 0x00000000 |
| #define CM_GETIDLIST_FILTER_ENUMERATOR 0x00000001 |
| #define CM_GETIDLIST_FILTER_SERVICE 0x00000002 |
| #define CM_GETIDLIST_FILTER_EJECTRELATIONS 0x00000004 |
| #define CM_GETIDLIST_FILTER_REMOVALRELATIONS 0x00000008 |
| #define CM_GETIDLIST_FILTER_POWERRELATIONS 0x00000010 |
| #define CM_GETIDLIST_FILTER_BUSRELATIONS 0x00000020 |
| #define CM_GETIDLIST_DONOTGENERATE 0x10000040 |
| #define CM_GETIDLIST_FILTER_BITS 0x1000007F |
| |
| #define CM_GET_DEVICE_INTERFACE_LIST_PRESENT 0x00000000 |
| #define CM_GET_DEVICE_INTERFACE_LIST_ALL_DEVICES 0x00000001 |
| #define CM_GET_DEVICE_INTERFACE_LIST_BITS 0x00000001 |
| |
| |
| typedef struct BusNumber_Des_s { |
| DWORD BUSD_Count; |
| DWORD BUSD_Type; |
| DWORD BUSD_Flags; |
| ULONG BUSD_Alloc_Base; |
| ULONG BUSD_Alloc_End; |
| } BUSNUMBER_DES, *PBUSNUMBER_DES; |
| |
| typedef struct BusNumber_Range_s { |
| ULONG BUSR_Min; |
| ULONG BUSR_Max; |
| ULONG BUSR_nBusNumbers; |
| ULONG BUSR_Flags; |
| } BUSNUMBER_RANGE, *PBUSNUMBER_RANGE; |
| |
| #define BusNumberType_Range sizeof(BUSNUMBER_RANGE) |
| |
| typedef struct BusNumber_Resource_s { |
| BUSNUMBER_DES BusNumber_Header; |
| BUSNUMBER_RANGE BusNumber_Data[ANYSIZE_ARRAY]; |
| } BUSNUMBER_RESOURCE, *PBUSNUMBER_RESOURCE; |
| |
| typedef struct CS_Des_s { |
| DWORD CSD_SignatureLength; |
| DWORD CSD_LegacyDataOffset; |
| DWORD CSD_LegacyDataSize; |
| DWORD CSD_Flags; |
| GUID CSD_ClassGuid; |
| BYTE CSD_Signature[ANYSIZE_ARRAY]; |
| } CS_DES, *PCS_DES; |
| |
| typedef struct CS_Resource_s { |
| CS_DES CS_Header; |
| } CS_RESOURCE, *PCS_RESOURCE; |
| |
| typedef struct DevPrivate_Des_s { |
| DWORD PD_Count; |
| DWORD PD_Type; |
| DWORD PD_Data1; |
| DWORD PD_Data2; |
| DWORD PD_Data3; |
| DWORD PD_Flags; |
| } DEVPRIVATE_DES, *PDEVPRIVATE_DES; |
| |
| typedef struct DevPrivate_Range_s { |
| DWORD PR_Data1; |
| DWORD PR_Data2; |
| DWORD PR_Data3; |
| } DEVPRIVATE_RANGE, *PDEVPRIVATE_RANGE; |
| |
| #define PType_Range sizeof(DEVPRIVATE_RANGE) |
| |
| typedef struct DevPrivate_Resource_s { |
| DEVPRIVATE_DES PRV_Header; |
| DEVPRIVATE_RANGE PRV_Data[ANYSIZE_ARRAY]; |
| } DEVPRIVATE_RESOURCE, *PDEVPRIVATE_RESOURCE; |
| |
| /* DMA_DES.DD_Flags constants and masks */ |
| #define mDD_Width 0x3 |
| #define fDD_BYTE 0x0 |
| #define fDD_WORD 0x1 |
| #define fDD_DWORD 0x2 |
| #define fDD_BYTE_AND_WORD 0x3 |
| |
| #define mDD_BusMaster 0x4 |
| #define fDD_NoBusMaster 0x0 |
| #define fDD_BusMaster 0x4 |
| |
| #define mDD_Type 0x18 |
| #define fDD_TypeStandard 0x00 |
| #define fDD_TypeA 0x08 |
| #define fDD_TypeB 0x10 |
| #define fDD_TypeF 0x18 |
| |
| typedef struct DMA_Des_s { |
| DWORD DD_Count; |
| DWORD DD_Type; |
| DWORD DD_Flags; |
| ULONG DD_Alloc_Chan; |
| } DMA_DES, *PDMA_DES; |
| |
| typedef struct DMA_Range_s { |
| ULONG DR_Min; |
| ULONG DR_Max; |
| ULONG DR_Flags; |
| } DMA_RANGE, *PDMA_RANGE; |
| |
| #define DType_Range sizeof(DMA_RANGE) |
| |
| typedef struct DMA_Resource_s { |
| DMA_DES DMA_Header; |
| DMA_RANGE DMA_Data[ANYSIZE_ARRAY]; |
| } DMA_RESOURCE, *PDMA_RESOURCE; |
| |
| /* IO_DES.Type constants and masks */ |
| #define fIOD_PortType 0x1 |
| #define fIOD_Memory 0x0 |
| #define fIOD_IO 0x1 |
| #define fIOD_DECODE 0x00fc |
| #define fIOD_10_BIT_DECODE 0x0004 |
| #define fIOD_12_BIT_DECODE 0x0008 |
| #define fIOD_16_BIT_DECODE 0x0010 |
| #define fIOD_POSITIVE_DECODE 0x0020 |
| #define fIOD_PASSIVE_DECODE 0x0040 |
| #define fIOD_WINDOW_DECODE 0x0080 |
| |
| typedef struct IO_Des_s { |
| DWORD IOD_Count; |
| DWORD IOD_Type; |
| DWORDLONG IOD_Alloc_Base; |
| DWORDLONG IOD_Alloc_End; |
| DWORD IOD_DesFlags; |
| } IO_DES, *PIO_DES; |
| |
| /* IO_RANGE.IOR_Alias constants */ |
| #define IO_ALIAS_10_BIT_DECODE 0x00000004 |
| #define IO_ALIAS_12_BIT_DECODE 0x00000010 |
| #define IO_ALIAS_16_BIT_DECODE 0x00000000 |
| #define IO_ALIAS_POSITIVE_DECODE 0x000000FF |
| |
| typedef struct IO_Range_s { |
| DWORDLONG IOR_Align; |
| DWORD IOR_nPorts; |
| DWORDLONG IOR_Min; |
| DWORDLONG IOR_Max; |
| DWORD IOR_RangeFlags; |
| DWORDLONG IOR_Alias; |
| } IO_RANGE, *PIO_RANGE; |
| |
| #define IOType_Range sizeof(IO_RANGE) |
| |
| typedef struct IO_Resource_s { |
| IO_DES IO_Header; |
| IO_RANGE IO_Data[ANYSIZE_ARRAY]; |
| } IO_RESOURCE, *PIO_RESOURCE; |
| |
| /* IRQ_DES.IRQD_flags constants */ |
| #define mIRQD_Share 0x1 |
| #define fIRQD_Exclusive 0x0 |
| #define fIRQD_Share 0x1 |
| |
| #define fIRQD_Share_Bit 0 |
| #define fIRQD_Level_Bit 1 |
| |
| #define mIRQD_Edge_Level 0x2 |
| #define fIRQD_Level 0x0 |
| #define fIRQD_Edge 0x2 |
| |
| typedef struct IRQ_Des_32_s { |
| DWORD IRQD_Count; |
| DWORD IRQD_Type; |
| DWORD IRQD_Flags; |
| ULONG IRQD_Alloc_Num; |
| ULONG32 IRQD_Affinity; |
| } IRQ_DES_32, *PIRQ_DES_32; |
| |
| typedef struct IRQ_Des_64_s { |
| DWORD IRQD_Count; |
| DWORD IRQD_Type; |
| DWORD IRQD_Flags; |
| ULONG IRQD_Alloc_Num; |
| ULONG64 IRQD_Affinity; |
| } IRQ_DES_64, *PIRQ_DES_64; |
| |
| #ifdef _WIN64 |
| typedef IRQ_DES_64 IRQ_DES; |
| typedef PIRQ_DES_64 PIRQ_DES; |
| #else |
| typedef IRQ_DES_32 IRQ_DES; |
| typedef PIRQ_DES_32 PIRQ_DES; |
| #endif |
| |
| typedef struct IRQ_Range_s { |
| ULONG IRQR_Min; |
| ULONG IRQR_Max; |
| ULONG IRQR_Flags; |
| } IRQ_RANGE, *PIRQ_RANGE; |
| |
| #define IRQType_Range sizeof(IRQ_RANGE) |
| |
| typedef struct IRQ_Resource_s { |
| IRQ_DES IRQ_Header; |
| IRQ_RANGE IRQ_Data[ANYSIZE_ARRAY]; |
| } IRQ_RESOURCE, *PIRQ_RESOURCE; |
| |
| /* MEM_DES.MD_Flags constants */ |
| #define mMD_MemoryType 0x1 |
| #define fMD_MemoryType mMD_MemoryType |
| #define fMD_ROM 0x0 |
| #define fMD_RAM 0x1 |
| |
| #define mMD_32_24 0x2 |
| #define fMD_32_24 mMD_32_24 |
| #define fMD_24 0x0 |
| #define fMD_32 0x2 |
| |
| #define mMD_Prefetchable 0x4 |
| #define fMD_Prefetchable mMD_Prefetchable |
| #define fMD_Pref mMD_Prefetchable |
| #define fMD_PrefetchDisallowed 0x0 |
| #define fMD_PrefetchAllowed 0x4 |
| |
| #define mMD_Readable 0x8 |
| #define fMD_Readable mMD_Readable |
| #define fMD_ReadAllowed 0x0 |
| #define fMD_ReadDisallowed 0x8 |
| |
| #define mMD_CombinedWrite 0x10 |
| #define fMD_CombinedWrite mMD_CombinedWrite |
| #define fMD_CombinedWriteDisallowed 0x0 |
| #define fMD_CombinedWriteAllowed 0x10 |
| |
| #define mMD_Cacheable 0x20 |
| #define fMD_NonCacheable 0x0 |
| #define fMD_Cacheable 0x20 |
| |
| typedef struct Mem_Des_s { |
| DWORD MD_Count; |
| DWORD MD_Type; |
| DWORDLONG MD_Alloc_Base; |
| DWORDLONG MD_Alloc_End; |
| DWORD MD_Flags; |
| DWORD MD_Reserved; |
| } MEM_DES, *PMEM_DES; |
| |
| typedef struct Mem_Range_s { |
| DWORDLONG MR_Align; |
| ULONG MR_nBytes; |
| DWORDLONG MR_Min; |
| DWORDLONG MR_Max; |
| DWORD MR_Flags; |
| DWORD MR_Reserved; |
| } MEM_RANGE, *PMEM_RANGE; |
| |
| #define MType_Range sizeof(MEM_RANGE) |
| |
| typedef struct Mem_Resource_s { |
| MEM_DES MEM_Header; |
| MEM_RANGE MEM_Data[ANYSIZE_ARRAY]; |
| } MEM_RESOURCE, *PMEM_RESOURCE; |
| |
| /* MFCARD_DES.PMF_Flags constants */ |
| #define fPMF_AUDIO_ENABLE 0x8 |
| #define mPMF_AUDIO_ENABLE fPMF_AUDIO_ENABLE |
| |
| typedef struct MfCard_Des_s { |
| DWORD PMF_Count; |
| DWORD PMF_Type; |
| DWORD PMF_Flags; |
| BYTE PMF_ConfigOptions; |
| BYTE PMF_IoResourceIndex; |
| BYTE PMF_Reserved[2]; |
| DWORD PMF_ConfigRegisterBase; |
| } MFCARD_DES, *PMFCARD_DES; |
| |
| typedef struct MfCard_Resource_s { |
| MFCARD_DES MfCard_Header; |
| } MFCARD_RESOURCE, *PMFCARD_RESOURCE; |
| |
| /* PCCARD_DES.PCD_Flags constants */ |
| |
| typedef struct PcCard_Des_s { |
| DWORD PCD_Count; |
| DWORD PCD_Type; |
| DWORD PCD_Flags; |
| BYTE PCD_ConfigIndex; |
| BYTE PCD_Reserved[3]; |
| DWORD PCD_MemoryCardBase1; |
| DWORD PCD_MemoryCardBase2; |
| } PCCARD_DES, *PPCCARD_DES; |
| |
| #define mPCD_IO_8_16 0x1 |
| #define fPCD_IO_8 0x0 |
| #define fPCD_IO_16 0x1 |
| #define mPCD_MEM_8_16 0x2 |
| #define fPCD_MEM_8 0x0 |
| #define fPCD_MEM_16 0x2 |
| #define mPCD_MEM_A_C 0xC |
| #define fPCD_MEM1_A 0x4 |
| #define fPCD_MEM2_A 0x8 |
| #define fPCD_IO_ZW_8 0x10 |
| #define fPCD_IO_SRC_16 0x20 |
| #define fPCD_IO_WS_16 0x40 |
| #define mPCD_MEM_WS 0x300 |
| #define fPCD_MEM_WS_ONE 0x100 |
| #define fPCD_MEM_WS_TWO 0x200 |
| #define fPCD_MEM_WS_THREE 0x300 |
| |
| #define fPCD_MEM_A 0x4 |
| |
| #define fPCD_ATTRIBUTES_PER_WINDOW 0x8000 |
| |
| #define fPCD_IO1_16 0x00010000 |
| #define fPCD_IO1_ZW_8 0x00020000 |
| #define fPCD_IO1_SRC_16 0x00040000 |
| #define fPCD_IO1_WS_16 0x00080000 |
| |
| #define fPCD_IO2_16 0x00100000 |
| #define fPCD_IO2_ZW_8 0x00200000 |
| #define fPCD_IO2_SRC_16 0x00400000 |
| #define fPCD_IO2_WS_16 0x00800000 |
| |
| #define mPCD_MEM1_WS 0x03000000 |
| #define fPCD_MEM1_WS_ONE 0x01000000 |
| #define fPCD_MEM1_WS_TWO 0x02000000 |
| #define fPCD_MEM1_WS_THREE 0x03000000 |
| #define fPCD_MEM1_16 0x04000000 |
| |
| #define mPCD_MEM2_WS 0x30000000 |
| #define fPCD_MEM2_WS_ONE 0x10000000 |
| #define fPCD_MEM2_WS_TWO 0x20000000 |
| #define fPCD_MEM2_WS_THREE 0x30000000 |
| #define fPCD_MEM2_16 0x40000000 |
| |
| #define PCD_MAX_MEMORY 2 |
| #define PCD_MAX_IO 2 |
| |
| typedef struct PcCard_Resource_s { |
| PCCARD_DES PcCard_Header; |
| } PCCARD_RESOURCE, *PPCCARD_RESOURCE; |
| |
| |
| /* CONFLICT_DETAILS.CD.ulMask constants */ |
| #define CM_CDMASK_DEVINST 0x00000001 |
| #define CM_CDMASK_RESDES 0x00000002 |
| #define CM_CDMASK_FLAGS 0x00000004 |
| #define CM_CDMASK_DESCRIPTION 0x00000008 |
| #define CM_CDMASK_VALID 0x0000000F |
| |
| /* CONFLICT_DETAILS.CD.ulFlags constants */ |
| #define CM_CDFLAGS_DRIVER 0x00000001 |
| #define CM_CDFLAGS_ROOT_OWNED 0x00000002 |
| #define CM_CDFLAGS_RESERVED 0x00000004 |
| |
| typedef struct _CONFLICT_DETAILS_A { |
| ULONG CD_ulSize; |
| ULONG CD_ulMask; |
| DEVINST CD_dnDevInst; |
| RES_DES CD_rdResDes; |
| ULONG CD_ulFlags; |
| CHAR CD_szDescription[MAX_PATH]; |
| } CONFLICT_DETAILS_A , *PCONFLICT_DETAILS_A; |
| |
| typedef struct _CONFLICT_DETAILS_W { |
| ULONG CD_ulSize; |
| ULONG CD_ulMask; |
| DEVINST CD_dnDevInst; |
| RES_DES CD_rdResDes; |
| ULONG CD_ulFlags; |
| WCHAR CD_szDescription[MAX_PATH]; |
| } CONFLICT_DETAILS_W , *PCONFLICT_DETAILS_W; |
| |
| #ifdef UNICODE |
| typedef CONFLICT_DETAILS_W CONFLICT_DETAILS; |
| typedef PCONFLICT_DETAILS_W PCONFLICT_DETAILS; |
| #else |
| typedef CONFLICT_DETAILS_A CONFLICT_DETAILS; |
| typedef PCONFLICT_DETAILS_A PCONFLICT_DETAILS; |
| #endif |
| |
| |
| |
| /* CM_Add_Empty_Log_Conf.ulFlags constants */ |
| #define PRIORITY_EQUAL_FIRST 0x00000008 |
| #define PRIORITY_EQUAL_LAST 0x00000000 |
| #define PRIORITY_BIT 0x00000008 |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Add_Empty_Log_Conf( |
| /*OUT*/ PLOG_CONF plcLogConf, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ PRIORITY Priority, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Add_Empty_Log_Conf_Ex( |
| /*OUT*/ PLOG_CONF plcLogConf, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ PRIORITY Priority, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| /* CM_Add_ID.ulFlags constants */ |
| #define CM_ADD_ID_HARDWARE 0x00000000 |
| #define CM_ADD_ID_COMPATIBLE 0x00000001 |
| #define CM_ADD_ID_BITS 0x00000001 |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Add_IDA( |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ PSTR pszID, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Add_ID_ExA( |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ PSTR pszID, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Add_ID_ExW( |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ PWSTR pszID, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Add_IDW( |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ PWSTR pszID, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| #ifdef UNICODE |
| #define CM_Add_ID CM_Add_IDW |
| #define CM_Add_ID_Ex CM_Add_ID_ExW |
| #else |
| #define CM_Add_ID CM_Add_IDA |
| #define CM_Add_ID_Ex CM_Add_ID_ExA |
| #endif /* UNICODE */ |
| |
| /* FIXME: Obsolete CM_Add_Range */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Add_Res_Des( |
| /*OUT*/ PRES_DES prdResDes, |
| /*IN*/ LOG_CONF lcLogConf, |
| /*IN*/ RESOURCEID ResourceID, |
| /*IN*/ PCVOID ResourceData, |
| /*IN*/ ULONG ResourceLen, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Add_Res_Des_Ex( |
| /*OUT*/ PRES_DES prdResDes, |
| /*IN*/ LOG_CONF lcLogConf, |
| /*IN*/ RESOURCEID ResourceID, |
| /*IN*/ PCVOID ResourceData, |
| /*IN*/ ULONG ResourceLen, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Connect_MachineA( |
| /*IN*/ PCSTR UNCServerName, |
| /*OUT*/ PHMACHINE phMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Connect_MachineW( |
| /*IN*/ PCWSTR UNCServerName, |
| /*OUT*/ PHMACHINE phMachine); |
| |
| #ifdef UNICODE |
| #define CM_Connect_Machine CM_Connect_MachineW |
| #else |
| #define CM_Connect_Machine CM_Connect_MachineA |
| #endif /* UNICODE */ |
| |
| /* FIXME: Obsolete CM_Create_DevNode */ |
| /* FIXME: Obsolete CM_Create_DevNodeEx */ |
| /* FIXME: Obsolete CM_Create_Range_List */ |
| /* FIXME: Obsolete CM_Delete_Class_Key */ |
| /* FIXME: Obsolete CM_Delete_Class_Key_Ex */ |
| /* FIXME: Obsolete CM_Delete_DevNode_Key */ |
| /* FIXME: Obsolete CM_Delete_DevNode_Key_Ex */ |
| /* FIXME: Obsolete CM_Delete_Range */ |
| /* FIXME: Obsolete CM_Detected_Resource_Conflict */ |
| /* FIXME: Obsolete CM_Detected_Resource_Conflict_Ex */ |
| /* FIXME: Obsolete CM_Disable_DevNode */ |
| /* FIXME: Obsolete CM_Disable_DevNodeEx */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Disconnect_Machine( |
| /*IN*/ HMACHINE hMachine); |
| |
| /* FIXME: Obsolete CM_Enable_DevNode */ |
| /* FIXME: Obsolete CM_Enable_DevNodeEx */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Enumerate_Classes( |
| /*IN*/ ULONG ulClassIndex, |
| /*OUT*/ LPGUID ClassGuid, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Enumerate_Classes_Ex( |
| /*IN*/ ULONG ulClassIndex, |
| /*OUT*/ LPGUID ClassGuid, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Enumerate_EnumeratorsA( |
| /*IN*/ ULONG ulEnumIndex, |
| /*OUT*/ PCHAR Buffer, |
| /*IN OUT*/ PULONG pulLength, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Enumerate_Enumerators_ExA( |
| /*IN*/ ULONG ulEnumIndex, |
| /*OUT*/ PCHAR Buffer, |
| /*IN OUT*/ PULONG pulLength, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Enumerate_Enumerators_ExW( |
| /*IN*/ ULONG ulEnumIndex, |
| /*OUT*/ PWCHAR Buffer, |
| /*IN OUT*/ PULONG pulLength, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Enumerate_EnumeratorsW( |
| /*IN*/ ULONG ulEnumIndex, |
| /*OUT*/ PWCHAR Buffer, |
| /*IN OUT*/ PULONG pulLength, |
| /*IN*/ ULONG ulFlags); |
| |
| #ifdef UNICODE |
| #define CM_Enumerate_Enumerators CM_Enumerate_EnumeratorsW |
| #define CM_Enumerate_Enumerators_Ex CM_Enumerate_Enumerators_ExW |
| #else |
| #define CM_Enumerate_Enumerators CM_Enumerate_EnumeratorsA |
| #define CM_Enumerate_Enumerators_Ex CM_Enumerate_Enumerators_ExW |
| #endif /* UNICODE */ |
| |
| /* FIXME: Obsolete CM_Find_Range */ |
| /* FIXME: Obsolete CM_First_Range */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Free_Log_Conf( |
| /*IN*/ LOG_CONF lcLogConfToBeFreed, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Free_Log_Conf_Ex( |
| /*IN*/ LOG_CONF lcLogConfToBeFreed, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Free_Log_Conf_Handle( |
| /*IN*/ LOG_CONF lcLogConf); |
| |
| /* FIXME: Obsolete CM_Free_Range_List */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Free_Res_Des( |
| /*OUT*/ PRES_DES prdResDes, |
| /*IN*/ RES_DES rdResDes, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Free_Res_Des_Ex( |
| /*OUT*/ PRES_DES prdResDes, |
| /*IN*/ RES_DES rdResDes, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Free_Res_Des_Handle( |
| /*IN*/ RES_DES rdResDes); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Free_Resource_Conflict_Handle( |
| /*IN*/ CONFLICT_LIST clConflictList); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Child( |
| /*OUT*/ PDEVINST pdnDevInst, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Child_Ex( |
| /*OUT*/ PDEVINST pdnDevInst, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| /* FIXME: Obsolete CM_Get_Class_Name */ |
| /* FIXME: Obsolete CM_Get_Class_Name_Ex */ |
| /* FIXME: Obsolete CM_Get_Class_Key_Name */ |
| /* FIXME: Obsolete CM_Get_Class_Key_Name_Ex */ |
| /* FIXME: Obsolete CM_Get_Class_Registry_Property */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Depth( |
| /*OUT*/ PULONG pulDepth, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Depth_Ex( |
| /*OUT*/ PULONG pulDepth, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_IDA( |
| /*IN*/ DEVINST dnDevInst, |
| /*OUT*/ PCHAR Buffer, |
| /*IN*/ ULONG BufferLen, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_ID_ExA( |
| /*IN*/ DEVINST dnDevInst, |
| /*OUT*/ PCHAR Buffer, |
| /*IN*/ ULONG BufferLen, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_ID_ExW( |
| /*IN*/ DEVINST dnDevInst, |
| /*OUT*/ PWCHAR Buffer, |
| /*IN*/ ULONG BufferLen, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_IDW( |
| /*IN*/ DEVINST dnDevInst, |
| /*OUT*/ PWCHAR Buffer, |
| /*IN*/ ULONG BufferLen, |
| /*IN*/ ULONG ulFlags); |
| |
| #ifdef UNICODE |
| #define CM_Get_Device_ID CM_Get_Device_IDW |
| #define CM_Get_Device_ID_Ex CM_Get_Device_ID_ExW |
| #else |
| #define CM_Get_Device_ID CM_Get_Device_IDA |
| #define CM_Get_Device_ID_Ex CM_Get_Device_ID_ExW |
| #endif /* UNICODE */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_ID_ListA( |
| /*IN*/ PCSTR pszFilter, /*OPTIONAL*/ |
| /*OUT*/ PCHAR Buffer, |
| /*IN*/ ULONG BufferLen, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_ID_List_ExA( |
| /*IN*/ PCSTR pszFilter, /*OPTIONAL*/ |
| /*OUT*/ PCHAR Buffer, |
| /*IN*/ ULONG BufferLen, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_ID_List_ExW( |
| /*IN*/ PCWSTR pszFilter, /*OPTIONAL*/ |
| /*OUT*/ PWCHAR Buffer, |
| /*IN*/ ULONG BufferLen, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_ID_ListW( |
| /*IN*/ PCWSTR pszFilter, /*OPTIONAL*/ |
| /*OUT*/ PWCHAR Buffer, |
| /*IN*/ ULONG BufferLen, |
| /*IN*/ ULONG ulFlags); |
| |
| #ifdef UNICODE |
| #define CM_Get_Device_ID_List CM_Get_Device_ID_ListW |
| #define CM_Get_Device_ID_List_Ex CM_Get_Device_ID_List_ExW |
| #else |
| #define CM_Get_Device_ID_List CM_Get_Device_ID_ListA |
| #define CM_Get_Device_ID_List_Ex CM_Get_Device_ID_List_ExA |
| #endif /* UNICODE */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_ID_List_SizeA( |
| /*OUT*/ PULONG pulLen, |
| /*IN*/ PCSTR pszFilter, /*OPTIONAL*/ |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_ID_List_Size_ExA( |
| /*OUT*/ PULONG pulLen, |
| /*IN*/ PCSTR pszFilter, /*OPTIONAL*/ |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_ID_List_Size_ExW( |
| /*OUT*/ PULONG pulLen, |
| /*IN*/ PCWSTR pszFilter, /*OPTIONAL*/ |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_ID_List_SizeW( |
| /*OUT*/ PULONG pulLen, |
| /*IN*/ PCWSTR pszFilter, /*OPTIONAL*/ |
| /*IN*/ ULONG ulFlags); |
| |
| #ifdef UNICODE |
| #define CM_Get_Device_ID_List_Size CM_Get_Device_ID_List_SizeW |
| #define CM_Get_Device_ID_List_Size_Ex CM_Get_Device_ID_List_Size_ExW |
| #else |
| #define CM_Get_Device_ID_List_Size CM_Get_Device_ID_List_SizeA |
| #define CM_Get_Device_ID_List_Size_Ex CM_Get_Device_ID_List_Size_ExA |
| #endif /* UNICODE */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_ID_Size( |
| /*OUT*/ PULONG pulLen, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Device_ID_Size_Ex( |
| /*OUT*/ PULONG pulLen, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| /* FIXME: Obsolete CM_Get_Device_Interface_Alias */ |
| /* FIXME: Obsolete CM_Get_Device_Interface_Alias_Ex */ |
| /* FIXME: Obsolete CM_Get_Device_Interface_List */ |
| /* FIXME: Obsolete CM_Get_Device_Interface_List_Ex */ |
| /* FIXME: Obsolete CM_Get_Device_Interface_List_Size */ |
| /* FIXME: Obsolete CM_Get_Device_Interface_List_Size_Ex */ |
| /* FIXME: Obsolete CM_Get_DevNode_Custom_Property */ |
| /* FIXME: Obsolete CM_Get_DevNode_Custom_Property_Ex */ |
| /* FIXME: Obsolete CM_Get_DevNode_Registry_Property */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_DevNode_Status( |
| /*OUT*/ PULONG pulStatus, |
| /*OUT*/ PULONG pulProblemNumber, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_DevNode_Status_Ex( |
| /*OUT*/ PULONG pulStatus, |
| /*OUT*/ PULONG pulProblemNumber, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| #define CM_Get_DevInst_Status CM_Get_DevNode_Status |
| #define CM_Get_DevInst_Status_Ex CM_Get_DevNode_Status_Ex |
| |
| /* CM_Get_First_Log_Conf.ulFlags constants */ |
| #define BASIC_LOG_CONF 0x00000000 /* Specifies the req list. */ |
| #define FILTERED_LOG_CONF 0x00000001 /* Specifies the filtered req list. */ |
| #define ALLOC_LOG_CONF 0x00000002 /* Specifies the Alloc Element. */ |
| #define BOOT_LOG_CONF 0x00000003 /* Specifies the RM Alloc Element. */ |
| #define FORCED_LOG_CONF 0x00000004 /* Specifies the Forced Log Conf */ |
| #define OVERRIDE_LOG_CONF 0x00000005 /* Specifies the Override req list. */ |
| #define NUM_LOG_CONF 0x00000006 /* Number of Log Conf type */ |
| #define LOG_CONF_BITS 0x00000007 /* The bits of the log conf type. */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_First_Log_Conf( |
| /*OUT*/ PLOG_CONF plcLogConf, /*OPTIONAL*/ |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_First_Log_Conf_Ex( |
| /*OUT*/ PLOG_CONF plcLogConf, /*OPTIONAL*/ |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| /* FIXME: Obsolete CM_Get_Global_State */ |
| /* FIXME: Obsolete CM_Get_Global_State_Ex */ |
| /* FIXME: Obsolete CM_Get_Hardware_Profile_Info */ |
| /* FIXME: Obsolete CM_Get_Hardware_Profile_Info_Ex */ |
| /* FIXME: Obsolete CM_Get_HW_Prof_Flags */ |
| /* FIXME: Obsolete CM_Get_HW_Prof_Flags_Ex */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Log_Conf_Priority( |
| /*IN*/ LOG_CONF lcLogConf, |
| /*OUT*/ PPRIORITY pPriority, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Log_Conf_Priority_Ex( |
| /*IN*/ LOG_CONF lcLogConf, |
| /*OUT*/ PPRIORITY pPriority, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Next_Log_Conf( |
| /*OUT*/ PLOG_CONF plcLogConf, /*OPTIONAL*/ |
| /*IN*/ LOG_CONF lcLogConf, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Next_Log_Conf_Ex( |
| /*OUT*/ PLOG_CONF plcLogConf, /*OPTIONAL*/ |
| /*IN*/ LOG_CONF lcLogConf, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Next_Res_Des( |
| /*OUT*/ PRES_DES prdResDes, |
| /*IN*/ RES_DES rdResDes, |
| /*IN*/ RESOURCEID ForResource, |
| /*OUT*/ PRESOURCEID pResourceID, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Next_Res_Des_Ex( |
| /*OUT*/ PRES_DES prdResDes, |
| /*IN*/ RES_DES rdResDes, |
| /*IN*/ RESOURCEID ForResource, |
| /*OUT*/ PRESOURCEID pResourceID, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Parent( |
| /*OUT*/ PDEVINST pdnDevInst, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Parent_Ex( |
| /*OUT*/ PDEVINST pdnDevInst, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Res_Des_Data( |
| /*IN*/ RES_DES rdResDes, |
| /*OUT*/ PVOID Buffer, |
| /*IN*/ ULONG BufferLen, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Res_Des_Data_Ex( |
| /*IN*/ RES_DES rdResDes, |
| /*OUT*/ PVOID Buffer, |
| /*IN*/ ULONG BufferLen, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Res_Des_Data_Size( |
| /*OUT*/ PULONG pulSize, |
| /*IN*/ RES_DES rdResDes, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Res_Des_Data_Size_Ex( |
| /*OUT*/ PULONG pulSize, |
| /*IN*/ RES_DES rdResDes, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Resource_Conflict_Count( |
| /*IN*/ CONFLICT_LIST clConflictList, |
| /*OUT*/ PULONG pulCount); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Resource_Conflict_DetailsA( |
| /*IN*/ CONFLICT_LIST clConflictList, |
| /*IN*/ ULONG ulIndex, |
| /*IN OUT*/ PCONFLICT_DETAILS_A pConflictDetails); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Resource_Conflict_DetailsW( |
| /*IN*/ CONFLICT_LIST clConflictList, |
| /*IN*/ ULONG ulIndex, |
| /*IN OUT*/ PCONFLICT_DETAILS_W pConflictDetails); |
| |
| #ifdef UNICODE |
| #define CM_Get_Resource_Conflict_Details CM_Get_Resource_Conflict_DetailsW |
| #else |
| #define CM_Get_Resource_Conflict_Details CM_Get_Resource_Conflict_DetailsA |
| #endif /* UNICODE */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Sibling( |
| /*OUT*/ PDEVINST pdnDevInst, |
| /*IN*/ DEVINST DevInst, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Get_Sibling_Ex( |
| /*OUT*/ PDEVINST pdnDevInst, |
| /*IN*/ DEVINST DevInst, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| WORD |
| WINAPI |
| CM_Get_Version( |
| VOID); |
| |
| CMAPI |
| WORD |
| WINAPI |
| CM_Get_Version_Ex( |
| /*IN*/ HMACHINE hMachine); |
| |
| /* FIXME: Obsolete CM_Intersect_Range_List */ |
| /* FIXME: Obsolete CM_Invert_Range_List */ |
| /* FIXME: Obsolete CM_Is_Dock_Station_Present */ |
| /* FIXME: Obsolete CM_Is_Dock_Station_Present_Ex */ |
| |
| /* CM_Locate_DevNode.ulFlags constants */ |
| #define CM_LOCATE_DEVNODE_NORMAL 0x00000000 |
| #define CM_LOCATE_DEVNODE_PHANTOM 0x00000001 |
| #define CM_LOCATE_DEVNODE_CANCELREMOVE 0x00000002 |
| #define CM_LOCATE_DEVNODE_NOVALIDATION 0x00000004 |
| #define CM_LOCATE_DEVNODE_BITS 0x00000007 |
| |
| #define CM_LOCATE_DEVINST_NORMAL CM_LOCATE_DEVNODE_NORMAL |
| #define CM_LOCATE_DEVINST_PHANTOM CM_LOCATE_DEVNODE_PHANTOM |
| #define CM_LOCATE_DEVINST_CANCELREMOVE CM_LOCATE_DEVNODE_CANCELREMOVE |
| #define CM_LOCATE_DEVINST_NOVALIDATION CM_LOCATE_DEVNODE_NOVALIDATION |
| #define CM_LOCATE_DEVINST_BITS CM_LOCATE_DEVNODE_BITS |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Locate_DevNodeA( |
| /*OUT*/ PDEVINST pdnDevInst, |
| /*IN*/ DEVINSTID_A pDeviceID, /*OPTIONAL*/ |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Locate_DevNode_ExA( |
| /*OUT*/ PDEVINST pdnDevInst, |
| /*IN*/ DEVINSTID_A pDeviceID, /*OPTIONAL*/ |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Locate_DevNode_ExW( |
| /*OUT*/ PDEVINST pdnDevInst, |
| /*IN*/ DEVINSTID_W pDeviceID, /*OPTIONAL*/ |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Locate_DevNodeW( |
| /*OUT*/ PDEVINST pdnDevInst, |
| /*IN*/ DEVINSTID_W pDeviceID, /*OPTIONAL*/ |
| /*IN*/ ULONG ulFlags); |
| |
| #define CM_Locate_DevInstA CM_Locate_DevNodeA |
| #define CM_Locate_DevInstW CM_Locate_DevNodeW |
| #define CM_Locate_DevInst_ExA CM_Locate_DevNode_ExA |
| #define CM_Locate_DevInst_ExW CM_Locate_DevNode_ExW |
| |
| #ifdef UNICODE |
| #define CM_Locate_DevNode CM_Locate_DevNodeW |
| #define CM_Locate_DevInst CM_Locate_DevNodeW |
| #define CM_Locate_DevNode_Ex CM_Locate_DevNode_ExW |
| #define CM_Locate_DevInst_Ex CM_Locate_DevNode_ExW |
| #else |
| #define CM_Locate_DevNode CM_Locate_DevNodeA |
| #define CM_Locate_DevInst CM_Locate_DevNodeA |
| #define CM_Locate_DevNode_Ex CM_Locate_DevNode_ExA |
| #define CM_Locate_DevInst_Ex CM_Locate_DevNode_ExA |
| #endif /* UNICODE */ |
| |
| /* FIXME: Obsolete CM_Merge_Range_List */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Modify_Res_Des( |
| /*OUT*/ PRES_DES prdResDes, |
| /*IN*/ RES_DES rdResDes, |
| /*IN*/ RESOURCEID ResourceID, |
| /*IN*/ PCVOID ResourceData, |
| /*IN*/ ULONG ResourceLen, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Modify_Res_Des_Ex( |
| /*OUT*/ PRES_DES prdResDes, |
| /*IN*/ RES_DES rdResDes, |
| /*IN*/ RESOURCEID ResourceID, |
| /*IN*/ PCVOID ResourceData, |
| /*IN*/ ULONG ResourceLen, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| /* FIXME: Obsolete CM_Move_DevNode */ |
| /* FIXME: Obsolete CM_Move_DevNode_Ex */ |
| /* FIXME: Obsolete CM_Next_Range */ |
| /* FIXME: Obsolete CM_Open_Class_Key */ |
| /* FIXME: Obsolete CM_Open_Class_Key_Ex */ |
| /* FIXME: Obsolete CM_Open_DevNode_Key */ |
| /* FIXME: Obsolete CM_Open_DevNode_Key_Ex */ |
| |
| /* CM_Query_And_Remove_SubTree.ulFlags constants */ |
| #define CM_REMOVE_UI_OK 0x00000000 |
| #define CM_REMOVE_UI_NOT_OK 0x00000001 |
| #define CM_REMOVE_NO_RESTART 0x00000002 |
| #define CM_REMOVE_BITS 0x00000003 |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Query_And_Remove_SubTreeA( |
| /*IN*/ DEVINST dnAncestor, |
| /*OUT*/ PPNP_VETO_TYPE pVetoType, |
| /*OUT*/ LPSTR pszVetoName, |
| /*IN*/ ULONG ulNameLength, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Query_And_Remove_SubTreeW( |
| /*IN*/ DEVINST dnAncestor, |
| /*OUT*/ PPNP_VETO_TYPE pVetoType, |
| /*OUT*/ LPWSTR pszVetoName, |
| /*IN*/ ULONG ulNameLength, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Query_And_Remove_SubTree_ExA( |
| /*IN*/ DEVINST dnAncestor, |
| /*OUT*/ PPNP_VETO_TYPE pVetoType, |
| /*OUT*/ LPSTR pszVetoName, |
| /*IN*/ ULONG ulNameLength, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Query_And_Remove_SubTree_ExW( |
| /*IN*/ DEVINST dnAncestor, |
| /*OUT*/ PPNP_VETO_TYPE pVetoType, |
| /*OUT*/ LPWSTR pszVetoName, |
| /*IN*/ ULONG ulNameLength, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| /* FIXME: Obsolete CM_Query_Arbitrator_Free_Data */ |
| /* FIXME: Obsolete CM_Query_Arbitrator_Free_Data_Ex */ |
| /* FIXME: Obsolete CM_Query_Arbitrator_Free_Size */ |
| /* FIXME: Obsolete CM_Query_Arbitrator_Free_Size_Ex */ |
| /* FIXME: Obsolete CM_Query_Arbitrator_Free_Size_Ex */ |
| /* FIXME: Obsolete CM_Query_Remove_SubTree */ |
| /* FIXME: Obsolete CM_Query_Remove_SubTree_Ex */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Query_Resource_Conflict_List( |
| /*OUT*/ PCONFLICT_LIST pclConflictList, |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ RESOURCEID ResourceID, |
| /*IN*/ PCVOID ResourceData, |
| /*IN*/ ULONG ResourceLen, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| /* CM_Reenumerate_DevNode.ulFlags constants */ |
| #define CM_REENUMERATE_NORMAL 0x00000000 |
| #define CM_REENUMERATE_SYNCHRONOUS 0x00000001 |
| #define CM_REENUMERATE_RETRY_INSTALLATION 0x00000002 |
| #define CM_REENUMERATE_ASYNCHRONOUS 0x00000004 |
| #define CM_REENUMERATE_BITS 0x00000007 |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Reenumerate_DevNode( |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Reenumerate_DevNode_Ex( |
| /*IN*/ DEVINST dnDevInst, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| #define CM_Reenumerate_DevInst CM_Reenumerate_DevNode |
| #define CM_Reenumerate_DevInst_Ex CM_Reenumerate_DevNode_Ex |
| |
| /* FIXME: Obsolete CM_Register_Device_Driver */ |
| /* FIXME: Obsolete CM_Register_Device_Driver_Ex */ |
| /* FIXME: Obsolete CM_Register_Device_Interface */ |
| /* FIXME: Obsolete CM_Register_Device_Interface_Ex */ |
| /* FIXME: Obsolete CM_Remove_SubTree */ |
| /* FIXME: Obsolete CM_Remove_SubTree_Ex */ |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Request_Device_EjectA( |
| /*IN*/ DEVINST dnDevInst, |
| /*OUT*/ PPNP_VETO_TYPE pVetoType, |
| /*OUT*/ LPSTR pszVetoName, |
| /*IN*/ ULONG ulNameLength, |
| /*IN*/ ULONG ulFlags); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Request_Device_Eject_ExW( |
| /*IN*/ DEVINST dnDevInst, |
| /*OUT*/ PPNP_VETO_TYPE pVetoType, |
| /*OUT*/ LPWSTR pszVetoName, |
| /*IN*/ ULONG ulNameLength, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Request_Device_Eject_ExA( |
| /*IN*/ DEVINST dnDevInst, |
| /*OUT*/ PPNP_VETO_TYPE pVetoType, |
| /*OUT*/ LPSTR pszVetoName, |
| /*IN*/ ULONG ulNameLength, |
| /*IN*/ ULONG ulFlags, |
| /*IN*/ HMACHINE hMachine); |
| |
| CMAPI |
| CONFIGRET |
| WINAPI |
| CM_Request_Device_EjectW( |
| /*IN*/ DEVINST dnDevInst, |
| /*OUT*/ PPNP_VETO_TYPE pVetoType, |
| /*OUT*/ LPWSTR pszVetoName, |
| /*IN*/ ULONG ulNameLength, |
| /*IN*/ ULONG ulFlags); |
| |
| #ifdef UNICODE |
| #define CM_Request_Device_Eject CM_Request_Device_EjectW |
| #define CM_Request_Device_Eject_Ex CM_Request_Device_Eject_ExW |
| #else |
| #define CM_Request_Device_Eject CM_Request_Device_EjectA |
| #define CM_Request_Device_Eject_Ex CM_Request_Device_Eject_ExA |
| #endif /* UNICODE */ |
| |
| /* FIXME: Obsolete CM_Request_Eject_PC */ |
| /* FIXME: Obsolete CM_Request_Eject_PC_Ex */ |
| /* FIXME: Obsolete CM_Run_Detection */ |
| /* FIXME: Obsolete CM_Run_Detection_Ex */ |
| /* FIXME: Obsolete CM_Set_Class_Registry_Property */ |
| /* FIXME: Obsolete CM_Set_DevNode_Problem */ |
| /* FIXME: Obsolete CM_Set_DevNode_Problem_Ex */ |
| /* FIXME: Obsolete CM_Set_DevNode_Registry_Property */ |
| /* FIXME: Obsolete CM_Set_DevNode_Registry_Property_Ex */ |
| /* FIXME: Obsolete CM_Set_HW_Prof */ |
| /* FIXME: Obsolete CM_Set_HW_Prof_Ex */ |
| /* FIXME: Obsolete CM_Set_HW_Prof_Flags */ |
| /* FIXME: Obsolete CM_Set_HW_Prof_Flags_Ex */ |
| /* FIXME: Obsolete CM_Setup_DevNode */ |
| /* FIXME: Obsolete CM_Setup_DevNode_Ex */ |
| /* FIXME: Obsolete CM_Test_Range_Available */ |
| /* FIXME: Obsolete CM_Uninstall_DevNode */ |
| /* FIXME: Obsolete CM_Uninstall_DevNode_Ex */ |
| /* FIXME: Obsolete CM_Unregister_Device_Interface */ |
| /* FIXME: Obsolete CM_Unregister_Device_Interface_Ex */ |
| |
| #define CM_WaitNoPendingInstallEvents CMP_WaitNoPendingInstallEvents |
| |
| CMAPI |
| DWORD |
| WINAPI |
| CMP_WaitNoPendingInstallEvents( |
| /*IN*/ DWORD dwTimeout); |
| |
| #include <poppack.h> |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif /* __CFGMGR32_H */ |