Headers diff for setupapi.dll between 6.0.6002.18005-Windows 6.0 and 6.1.7601.17514-Windows 7.0 versions



 cfgmgr32.h (6.0.6002.18005-Windows 6.0)   cfgmgr32.h (6.1.7601.17514-Windows 7.0) 
skipping to change at line 274 skipping to change at line 274
MEM_DES MEM_Header; // info about memory range list MEM_DES MEM_Header; // info about memory range list
MEM_RANGE MEM_Data[ANYSIZE_ARRAY]; // list of memory ranges MEM_RANGE MEM_Data[ANYSIZE_ARRAY]; // list of memory ranges
} MEM_RESOURCE, *PMEM_RESOURCE; } MEM_RESOURCE, *PMEM_RESOURCE;
// //
// Define the size of each range structure // Define the size of each range structure
// //
#define MType_Range sizeof(struct Mem_Range_s) #define MType_Range sizeof(struct Mem_Range_s)
//-------------------------------------------------------------- //--------------------------------------------------------------
// Large Memory Resource
//--------------------------------------------------------------
//
// Note that large memory ranges use the same attribute flags as memory ranges.
//
//
// MEM_LARGE_RANGE Structure
//
typedef struct Mem_Large_Range_s {
DWORDLONG MLR_Align; // specifies mask for base alignment
ULONGLONG MLR_nBytes; // specifies number of bytes required
DWORDLONG MLR_Min; // specifies minimum address of the range
DWORDLONG MLR_Max; // specifies maximum address of the range
DWORD MLR_Flags; // specifies flags describing range (fMD flags)
DWORD MLR_Reserved;
} MEM_LARGE_RANGE, *PMEM_LARGE_RANGE;
//
// MEM_LARGE_DES structure
//
typedef struct Mem_Large_Des_s {
DWORD MLD_Count; // number of LARGE_MEM_RANGE structs in LARGE_MEM
_RESOURCE
DWORD MLD_Type; // size (in bytes) of MEM_RANGE (MType_Range)
DWORDLONG MLD_Alloc_Base; // base memory address of range allocated
DWORDLONG MLD_Alloc_End; // end of allocated range
DWORD MLD_Flags; // flags describing allocated range (fMD flags)
DWORD MLD_Reserved;
} MEM_LARGE_DES, *PMEM_LARGE_DES;
//
// MEM_LARGE_RESOURCE structure
//
typedef struct Mem_Large_Resource_s {
MEM_LARGE_DES MEM_LARGE_Header; // info about memory range li
st
MEM_LARGE_RANGE MEM_LARGE_Data[ANYSIZE_ARRAY]; // list of memory ranges
} MEM_LARGE_RESOURCE, *PMEM_LARGE_RESOURCE;
//
// Define the size of each range structure
//
#define MLType_Range sizeof(struct Mem_Large_Range_s)
//--------------------------------------------------------------
// I/O Port Resource // I/O Port Resource
//-------------------------------------------------------------- //--------------------------------------------------------------
// //
// Define the attribute flags for port resources. Each bit flag is // Define the attribute flags for port resources. Each bit flag is
// identified by a constant bitmask. Following the bitmask definition, // identified by a constant bitmask. Following the bitmask definition,
// are the two possible values. // are the two possible values.
// //
#define fIOD_PortType (0x1) // Bitmask,whether port is IO or memory #define fIOD_PortType (0x1) // Bitmask,whether port is IO or memory
#define fIOD_Memory (0x0) // Port resource really uses memory #define fIOD_Memory (0x0) // Port resource really uses memory
skipping to change at line 428 skipping to change at line 473
#define mIRQD_Edge_Level (0x2) // Bitmask,whether edge or level triggered: #define mIRQD_Edge_Level (0x2) // Bitmask,whether edge or level triggered:
#define fIRQD_Level (0x0) // The IRQ is level-sensitive #define fIRQD_Level (0x0) // The IRQ is level-sensitive
#define fIRQD_Edge (0x2) // The IRQ is edge-sensitive #define fIRQD_Edge (0x2) // The IRQ is edge-sensitive
// //
// IRQ_RANGE // IRQ_RANGE
// //
typedef struct IRQ_Range_s { typedef struct IRQ_Range_s {
ULONG IRQR_Min; // minimum IRQ in the range ULONG IRQR_Min; // minimum IRQ in the range
ULONG IRQR_Max; // maximum IRQ in the range ULONG IRQR_Max; // maximum IRQ in the range
#if defined(NT_PROCESSOR_GROUPS)
USHORT IRQR_Flags; // flags describing the range (fIRQD flags)
USHORT IRQR_Rsvdz; // Reserved, must be zero.
#else
ULONG IRQR_Flags; // flags describing the range (fIRQD flags) ULONG IRQR_Flags; // flags describing the range (fIRQD flags)
#endif
} IRQ_RANGE, *PIRQ_RANGE; } IRQ_RANGE, *PIRQ_RANGE;
// //
// IRQ_DES structure // IRQ_DES structure
// //
typedef struct IRQ_Des_32_s { typedef struct IRQ_Des_32_s {
DWORD IRQD_Count; // number of IRQ_RANGE structs in IRQ_RESOURCE DWORD IRQD_Count; // number of IRQ_RANGE structs in IRQ_RESOURCE
DWORD IRQD_Type; // size (in bytes) of IRQ_RANGE (IRQType_Range) DWORD IRQD_Type; // size (in bytes) of IRQ_RANGE (IRQType_Range)
#if defined(NT_PROCESSOR_GROUPS)
USHORT IRQD_Flags; // flags describing the IRQ (fIRQD flags)
USHORT IRQD_Group; // Group number of interrupt target.
#else
DWORD IRQD_Flags; // flags describing the IRQ (fIRQD flags) DWORD IRQD_Flags; // flags describing the IRQ (fIRQD flags)
#endif
ULONG IRQD_Alloc_Num; // specifies the IRQ that was allocated ULONG IRQD_Alloc_Num; // specifies the IRQ that was allocated
ULONG32 IRQD_Affinity; ULONG32 IRQD_Affinity;
} IRQ_DES_32, *PIRQ_DES_32; } IRQ_DES_32, *PIRQ_DES_32;
typedef struct IRQ_Des_64_s { typedef struct IRQ_Des_64_s {
DWORD IRQD_Count; // number of IRQ_RANGE structs in IRQ_RESOURCE DWORD IRQD_Count; // number of IRQ_RANGE structs in IRQ_RESOURCE
DWORD IRQD_Type; // size (in bytes) of IRQ_RANGE (IRQType_Range) DWORD IRQD_Type; // size (in bytes) of IRQ_RANGE (IRQType_Range)
#if defined(NT_PROCESSOR_GROUPS)
USHORT IRQD_Flags; // flags describing the IRQ (fIRQD flags)
USHORT IRQD_Group; // Group number of interrupt target.
#else
DWORD IRQD_Flags; // flags describing the IRQ (fIRQD flags) DWORD IRQD_Flags; // flags describing the IRQ (fIRQD flags)
#endif
ULONG IRQD_Alloc_Num; // specifies the IRQ that was allocated ULONG IRQD_Alloc_Num; // specifies the IRQ that was allocated
ULONG64 IRQD_Affinity; ULONG64 IRQD_Affinity;
} IRQ_DES_64, *PIRQ_DES_64; } IRQ_DES_64, *PIRQ_DES_64;
#ifdef _WIN64 #ifdef _WIN64
typedef IRQ_DES_64 IRQ_DES; typedef IRQ_DES_64 IRQ_DES;
typedef PIRQ_DES_64 PIRQ_DES; typedef PIRQ_DES_64 PIRQ_DES;
#else #else
typedef IRQ_DES_32 IRQ_DES; typedef IRQ_DES_32 IRQ_DES;
typedef PIRQ_DES_32 PIRQ_DES; typedef PIRQ_DES_32 PIRQ_DES;
skipping to change at line 750 skipping to change at line 810
// Resource types // Resource types
// //
#define ResType_All (0x00000000) // Return all resource types #define ResType_All (0x00000000) // Return all resource types
#define ResType_None (0x00000000) // Arbitration always succeeded #define ResType_None (0x00000000) // Arbitration always succeeded
#define ResType_Mem (0x00000001) // Physical address resource #define ResType_Mem (0x00000001) // Physical address resource
#define ResType_IO (0x00000002) // Physical I/O address resource #define ResType_IO (0x00000002) // Physical I/O address resource
#define ResType_DMA (0x00000003) // DMA channels resource #define ResType_DMA (0x00000003) // DMA channels resource
#define ResType_IRQ (0x00000004) // IRQ resource #define ResType_IRQ (0x00000004) // IRQ resource
#define ResType_DoNotUse (0x00000005) // Used as spacer to sync subsequen t ResTypes w/NT #define ResType_DoNotUse (0x00000005) // Used as spacer to sync subsequen t ResTypes w/NT
#define ResType_BusNumber (0x00000006) // bus number resource #define ResType_BusNumber (0x00000006) // bus number resource
#define ResType_MAX (0x00000006) // Maximum known (arbitrated) ResTy
pe
//
// This resource type is currently only supported in Kernel Mode as
// CmResourceTypeMemoryLarge. It is shown here as ResType_MemLarge
// for completeness and will eventually be fully implemented in user mode
//
#define ResType_MemLarge (0x00000007) // Memory resources >= 4GB #define ResType_MemLarge (0x00000007) // Memory resources >= 4GB
#define ResType_MAX (0x00000007) // Maximum known (arbitrated) ResTy pe
#define ResType_Ignored_Bit (0x00008000) // Ignore this resource #define ResType_Ignored_Bit (0x00008000) // Ignore this resource
#define ResType_ClassSpecific (0x0000FFFF) // class-specific resource #define ResType_ClassSpecific (0x0000FFFF) // class-specific resource
#define ResType_Reserved (0x00008000) // reserved for internal use #define ResType_Reserved (0x00008000) // reserved for internal use
#define ResType_DevicePrivate (0x00008001) // device private data #define ResType_DevicePrivate (0x00008001) // device private data
#define ResType_PcCardConfig (0x00008002) // PC Card configuration data #define ResType_PcCardConfig (0x00008002) // PC Card configuration data
#define ResType_MfCardConfig (0x00008003) // MF Card configuration data #define ResType_MfCardConfig (0x00008003) // MF Card configuration data
// //
// Flags specifying options for ranges that conflict with ranges already in // Flags specifying options for ranges that conflict with ranges already in
skipping to change at line 864 skipping to change at line 918
// Flags for CM_Get_Device_ID_List, CM_Get_Device_ID_List_Size // Flags for CM_Get_Device_ID_List, CM_Get_Device_ID_List_Size
// //
#define CM_GETIDLIST_FILTER_NONE (0x00000000) #define CM_GETIDLIST_FILTER_NONE (0x00000000)
#define CM_GETIDLIST_FILTER_ENUMERATOR (0x00000001) #define CM_GETIDLIST_FILTER_ENUMERATOR (0x00000001)
#define CM_GETIDLIST_FILTER_SERVICE (0x00000002) #define CM_GETIDLIST_FILTER_SERVICE (0x00000002)
#define CM_GETIDLIST_FILTER_EJECTRELATIONS (0x00000004) #define CM_GETIDLIST_FILTER_EJECTRELATIONS (0x00000004)
#define CM_GETIDLIST_FILTER_REMOVALRELATIONS (0x00000008) #define CM_GETIDLIST_FILTER_REMOVALRELATIONS (0x00000008)
#define CM_GETIDLIST_FILTER_POWERRELATIONS (0x00000010) #define CM_GETIDLIST_FILTER_POWERRELATIONS (0x00000010)
#define CM_GETIDLIST_FILTER_BUSRELATIONS (0x00000020) #define CM_GETIDLIST_FILTER_BUSRELATIONS (0x00000020)
#define CM_GETIDLIST_DONOTGENERATE (0x10000040) #define CM_GETIDLIST_DONOTGENERATE (0x10000040)
#if (WINVER <= _WIN32_WINNT_LONGHORN)
#define CM_GETIDLIST_FILTER_BITS (0x1000007F) #define CM_GETIDLIST_FILTER_BITS (0x1000007F)
#endif // (WINVER <= _WIN32_WINNT_LONGHORN)
#if (WINVER >= _WIN32_WINNT_WIN7)
#define CM_GETIDLIST_FILTER_TRANSPORTRELATIONS (0x00000080)
#define CM_GETIDLIST_FILTER_PRESENT (0x00000100)
#define CM_GETIDLIST_FILTER_CLASS (0x00000200)
#define CM_GETIDLIST_FILTER_BITS (0x100003FF)
#endif // (WINVER >= _WIN32_WINNT_WIN7)
// //
// Flags for CM_Get_Device_Interface_List, CM_Get_Device_Interface_List_Size // Flags for CM_Get_Device_Interface_List, CM_Get_Device_Interface_List_Size
// //
#define CM_GET_DEVICE_INTERFACE_LIST_PRESENT (0x00000000) // only currently 'live' device interfaces #define CM_GET_DEVICE_INTERFACE_LIST_PRESENT (0x00000000) // only currently 'live' device interfaces
#define CM_GET_DEVICE_INTERFACE_LIST_ALL_DEVICES (0x00000001) // all registered device interfaces, live or not #define CM_GET_DEVICE_INTERFACE_LIST_ALL_DEVICES (0x00000001) // all registered device interfaces, live or not
#define CM_GET_DEVICE_INTERFACE_LIST_BITS (0x00000001) #define CM_GET_DEVICE_INTERFACE_LIST_BITS (0x00000001)
// //
// Registry properties (specified in call to CM_Get_DevInst_Registry_Property or CM_Get_Class_Registry_Property, // Registry properties (specified in call to CM_Get_DevInst_Registry_Property or CM_Get_Class_Registry_Property,
skipping to change at line 938 skipping to change at line 1000
#define CM_DRP_REMOVAL_POLICY (0x00000020) // CM_DEVICE_REMOVAL_POL ICY REG_DWORD (R) #define CM_DRP_REMOVAL_POLICY (0x00000020) // CM_DEVICE_REMOVAL_POL ICY REG_DWORD (R)
#define CM_DRP_REMOVAL_POLICY_HW_DEFAULT (0x00000021) // CM_DRP_REMOVAL_POLICY _HW_DEFAULT REG_DWORD (R) #define CM_DRP_REMOVAL_POLICY_HW_DEFAULT (0x00000021) // CM_DRP_REMOVAL_POLICY _HW_DEFAULT REG_DWORD (R)
#define CM_DRP_REMOVAL_POLICY_OVERRIDE (0x00000022) // CM_DRP_REMOVAL_POLICY _OVERRIDE REG_DWORD (RW) #define CM_DRP_REMOVAL_POLICY_OVERRIDE (0x00000022) // CM_DRP_REMOVAL_POLICY _OVERRIDE REG_DWORD (RW)
#define CM_DRP_INSTALL_STATE (0x00000023) // CM_DRP_INSTALL_STATE REG_DWORD (R) #define CM_DRP_INSTALL_STATE (0x00000023) // CM_DRP_INSTALL_STATE REG_DWORD (R)
#endif // (WINVER >= _WIN32_WINNT_WINXP) #endif // (WINVER >= _WIN32_WINNT_WINXP)
#if (WINVER >= _WIN32_WINNT_WS03) #if (WINVER >= _WIN32_WINNT_WS03)
#define CM_DRP_LOCATION_PATHS (0x00000024) // CM_DRP_LOCATION_PATHS REG_MULTI_SZ (R) #define CM_DRP_LOCATION_PATHS (0x00000024) // CM_DRP_LOCATION_PATHS REG_MULTI_SZ (R)
#endif // (WINVER >= _WIN32_WINNT_WS03) #endif // (WINVER >= _WIN32_WINNT_WS03)
#if (WINVER >= _WIN32_WINNT_WIN7)
#define CM_DRP_BASE_CONTAINERID (0x00000025) // Base ContainerID REG_
SZ property (R)
#endif // (WINVER >= _WIN32_WINNT_WIN7)
#define CM_DRP_MIN (0x00000001) // First device register #define CM_DRP_MIN (0x00000001) // First device register
#define CM_CRP_MIN CM_DRP_MIN // First class register #define CM_CRP_MIN CM_DRP_MIN // First class register
#define CM_DRP_MAX (0x00000024) // Last device register #define CM_DRP_MAX (0x00000025) // Last device register
#define CM_CRP_MAX CM_DRP_MAX // Last class register #define CM_CRP_MAX CM_DRP_MAX // Last class register
// //
// Capabilities bits (the capability value is returned from calling // Capabilities bits (the capability value is returned from calling
// CM_Get_DevInst_Registry_Property with CM_DRP_CAPABILITIES property) // CM_Get_DevInst_Registry_Property with CM_DRP_CAPABILITIES property)
// //
#define CM_DEVCAP_LOCKSUPPORTED (0x00000001) #define CM_DEVCAP_LOCKSUPPORTED (0x00000001)
#define CM_DEVCAP_EJECTSUPPORTED (0x00000002) #define CM_DEVCAP_EJECTSUPPORTED (0x00000002)
#define CM_DEVCAP_REMOVABLE (0x00000004) #define CM_DEVCAP_REMOVABLE (0x00000004)
#define CM_DEVCAP_DOCKDEVICE (0x00000008) #define CM_DEVCAP_DOCKDEVICE (0x00000008)
skipping to change at line 1095 skipping to change at line 1161
#define CM_QUERY_ARBITRATOR_BITS (0x00000001) #define CM_QUERY_ARBITRATOR_BITS (0x00000001)
#if (WINVER >= _WIN32_WINNT_WINXP) #if (WINVER >= _WIN32_WINNT_WINXP)
// //
// Flags for CM_Get_DevNode_Custom_Property // Flags for CM_Get_DevNode_Custom_Property
// //
#define CM_CUSTOMDEVPROP_MERGE_MULTISZ (0x00000001) #define CM_CUSTOMDEVPROP_MERGE_MULTISZ (0x00000001)
#define CM_CUSTOMDEVPROP_BITS (0x00000001) #define CM_CUSTOMDEVPROP_BITS (0x00000001)
#endif // (WINVER >= _WIN32_WINNT_WINXP) #endif // (WINVER >= _WIN32_WINNT_WINXP)
//
// Name attibute bitmasks
//
#define CM_NAME_ATTRIBUTE_NAME_RETRIEVED_FROM_DEVICE (0x1)
#define CM_NAME_ATTRIBUTE_USER_ASSIGNED_NAME (0x2)
//-------------------------------------------------------------- //--------------------------------------------------------------
// Function prototypes // Function prototypes
//-------------------------------------------------------------- //--------------------------------------------------------------
CMAPI CMAPI
CONFIGRET CONFIGRET
WINAPI WINAPI
CM_Add_Empty_Log_Conf( CM_Add_Empty_Log_Conf(
__out PLOG_CONF plcLogConf, __out PLOG_CONF plcLogConf,
__in DEVINST dnDevInst, __in DEVINST dnDevInst,
skipping to change at line 1323 skipping to change at line 1395
CMAPI CMAPI
CONFIGRET CONFIGRET
WINAPI WINAPI
CM_Delete_Range( CM_Delete_Range(
__in DWORDLONG ullStartValue, __in DWORDLONG ullStartValue,
__in DWORDLONG ullEndValue, __in DWORDLONG ullEndValue,
__in RANGE_LIST rlh, __in RANGE_LIST rlh,
__in ULONG ulFlags __in ULONG ulFlags
); );
__drv_preferredFunction("CM_Query_Resource_Conflict_List", "Obsolete")
CMAPI CMAPI
CONFIGRET CONFIGRET
WINAPI WINAPI
CM_Detect_Resource_Conflict( CM_Detect_Resource_Conflict(
__in DEVINST dnDevInst, __in DEVINST dnDevInst,
__in RESOURCEID ResourceID, __in RESOURCEID ResourceID,
__in_bcount(ResourceLen) PCVOID ResourceData, __in_bcount(ResourceLen) PCVOID ResourceData,
__in ULONG ResourceLen, __in ULONG ResourceLen,
__out PBOOL pbConflictDetected, __out PBOOL pbConflictDetected,
__in ULONG ulFlags __in ULONG ulFlags
); );
__drv_preferredFunction("CM_Query_Resource_Conflict_List", "Obsolete")
CMAPI CMAPI
CONFIGRET CONFIGRET
WINAPI WINAPI
CM_Detect_Resource_Conflict_Ex( CM_Detect_Resource_Conflict_Ex(
__in DEVINST dnDevInst, __in DEVINST dnDevInst,
__in RESOURCEID ResourceID, __in RESOURCEID ResourceID,
__in_bcount(ResourceLen) PCVOID ResourceData, __in_bcount(ResourceLen) PCVOID ResourceData,
__in ULONG ResourceLen, __in ULONG ResourceLen,
__out PBOOL pbConflictDetected, __out PBOOL pbConflictDetected,
__in ULONG ulFlags, __in ULONG ulFlags,
skipping to change at line 2009 skipping to change at line 2083
); );
CMAPI CMAPI
CONFIGRET CONFIGRET
WINAPI WINAPI
CM_Get_Global_State_Ex( CM_Get_Global_State_Ex(
__out PULONG pulState, __out PULONG pulState,
__in ULONG ulFlags, __in ULONG ulFlags,
__in_opt HMACHINE hMachine __in_opt HMACHINE hMachine
); );
#define CM_GLOBAL_STATE_CAN_DO_UI (0x00000001) // Can do UI
#define CM_GLOBAL_STATE_ON_BIG_STACK (0x00000002) // Not used (reserved)
#define CM_GLOBAL_STATE_SERVICES_AVAILABLE (0x00000004) // CM APIs available?
#define CM_GLOBAL_STATE_SHUTTING_DOWN (0x00000008) // CM shutting down
#define CM_GLOBAL_STATE_DETECTION_PENDING (0x00000010) // Not used (reserved)
#if (WINVER >= _WIN32_WINNT_WIN7)
#define CM_GLOBAL_STATE_REBOOT_REQUIRED (0x00000020) // system reboot is re
quired
#endif // (WINVER >= _WIN32_WINNT_WIN7)
CMAPI CMAPI
CONFIGRET CONFIGRET
WINAPI WINAPI
CM_Get_Hardware_Profile_InfoA( CM_Get_Hardware_Profile_InfoA(
__in ULONG ulIndex, __in ULONG ulIndex,
__out PHWPROFILEINFO_A pHWProfileInfo, __out PHWPROFILEINFO_A pHWProfileInfo,
__in ULONG ulFlags __in ULONG ulFlags
); );
CMAPI CMAPI
CONFIGRET CONFIGRET
skipping to change at line 3012 skipping to change at line 3095
); );
CMAPI CMAPI
CONFIGRET CONFIGRET
WINAPI WINAPI
CM_Register_Device_Driver_Ex( CM_Register_Device_Driver_Ex(
__in DEVINST dnDevInst, __in DEVINST dnDevInst,
__in ULONG ulFlags, __in ULONG ulFlags,
__in_opt HMACHINE hMachine __in_opt HMACHINE hMachine
); );
__drv_preferredFunction("CM_Query_And_Remove_Subtree", "Obsolete")
CMAPI CMAPI
CONFIGRET CONFIGRET
WINAPI WINAPI
CM_Remove_SubTree( CM_Remove_SubTree(
__in DEVINST dnAncestor, __in DEVINST dnAncestor,
__in ULONG ulFlags __in ULONG ulFlags
); );
__drv_preferredFunction("CM_Query_And_Remove_Subtree_Ex", "Obsolete")
CMAPI CMAPI
CONFIGRET CONFIGRET
WINAPI WINAPI
CM_Remove_SubTree_Ex( CM_Remove_SubTree_Ex(
__in DEVINST dnAncestor, __in DEVINST dnAncestor,
__in ULONG ulFlags, __in ULONG ulFlags,
__in_opt HMACHINE hMachine __in_opt HMACHINE hMachine
); );
CMAPI CMAPI
skipping to change at line 3396 skipping to change at line 3481
__in_opt HMACHINE hMachine __in_opt HMACHINE hMachine
); );
#ifdef UNICODE #ifdef UNICODE
#define CM_Get_Class_Registry_Property CM_Get_Class_Registry_PropertyW #define CM_Get_Class_Registry_Property CM_Get_Class_Registry_PropertyW
#define CM_Set_Class_Registry_Property CM_Set_Class_Registry_PropertyW #define CM_Set_Class_Registry_Property CM_Set_Class_Registry_PropertyW
#else #else
#define CM_Get_Class_Registry_Property CM_Get_Class_Registry_PropertyA #define CM_Get_Class_Registry_Property CM_Get_Class_Registry_PropertyA
#define CM_Set_Class_Registry_Property CM_Set_Class_Registry_PropertyA #define CM_Set_Class_Registry_Property CM_Set_Class_Registry_PropertyA
#endif // UNICODE #endif // UNICODE
#if (WINVER >= _WIN32_WINNT_WINXP) #if (WINVER >= _WIN32_WINNT_WIN2K)
#define CM_WaitNoPendingInstallEvents CMP_WaitNoPendingInstallEvents #define CM_WaitNoPendingInstallEvents CMP_WaitNoPendingInstallEvents
DWORD DWORD
WINAPI WINAPI
CM_WaitNoPendingInstallEvents( CM_WaitNoPendingInstallEvents(
__in DWORD dwTimeout __in DWORD dwTimeout
); );
#endif // (WINVER >= _WIN32_WINNT_WINXP) #endif // (WINVER >= _WIN32_WINNT_WIN2K)
//-------------------------------------------------------------- //--------------------------------------------------------------
// Configuration Manager return status codes // Configuration Manager return status codes
//-------------------------------------------------------------- //--------------------------------------------------------------
#define CR_SUCCESS (0x00000000) #define CR_SUCCESS (0x00000000)
#define CR_DEFAULT (0x00000001) #define CR_DEFAULT (0x00000001)
#define CR_OUT_OF_MEMORY (0x00000002) #define CR_OUT_OF_MEMORY (0x00000002)
#define CR_INVALID_POINTER (0x00000003) #define CR_INVALID_POINTER (0x00000003)
#define CR_INVALID_FLAG (0x00000004) #define CR_INVALID_FLAG (0x00000004)
 End of changes. 21 change blocks. 
11 lines changed or deleted 99 lines changed or added


 setupapi.h (6.0.6002.18005-Windows 6.0)   setupapi.h (6.1.7601.17514-Windows 7.0) 
skipping to change at line 161 skipping to change at line 161
DWORD MinorVersion; DWORD MinorVersion;
// //
// processor architecture to use (PROCESSOR_ARCHITECTURE_INTEL, // processor architecture to use (PROCESSOR_ARCHITECTURE_INTEL,
// PROCESSOR_ARCHITECTURE_AMD64, or PROCESSOR_ARCHITECTURE_IA64. // PROCESSOR_ARCHITECTURE_AMD64, or PROCESSOR_ARCHITECTURE_IA64.
// //
WORD ProcessorArchitecture; WORD ProcessorArchitecture;
union { union {
WORD Reserved; // for compatibility with V1 structure WORD Reserved; // for compatibility with V1 structure
WORD Flags; // indicates validity of non V1 fields WORD Flags; // indicates validity of non V1 fields
}; } DUMMYUNIONNAME;
// //
// specify SP_ALTPLATFORM_FLAGS_VERSION_RANGE in Flags // specify SP_ALTPLATFORM_FLAGS_VERSION_RANGE in Flags
// to use FirstValidatedMajorVersion and FirstValidatedMinorVersion // to use FirstValidatedMajorVersion and FirstValidatedMinorVersion
// //
// Major and minor versions of the oldest previous OS for which this // Major and minor versions of the oldest previous OS for which this
// package's digital signature may be considered valid. For example, say // package's digital signature may be considered valid. For example, say
// the alternate platform is VER_PLATFORM_WIN32_NT, version 5.1. However, // the alternate platform is VER_PLATFORM_WIN32_NT, version 5.1. However,
// it is wished that driver packages signed with a 5.0 osattr also be // it is wished that driver packages signed with a 5.0 osattr also be
// considered valid. In this case, you'd have a MajorVersion/MinorVersion // considered valid. In this case, you'd have a MajorVersion/MinorVersion
skipping to change at line 1551 skipping to change at line 1551
#define DNF_AUTHENTICODE_SIGNED 0x00020000 // Inf file is signed by an Authen ticode(tm) catalog. #define DNF_AUTHENTICODE_SIGNED 0x00020000 // Inf file is signed by an Authen ticode(tm) catalog.
#endif // _SETUPAPI_VER >= _WIN32_WINNT_WS03 #endif // _SETUPAPI_VER >= _WIN32_WINNT_WS03
#if _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN #if _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN
#define DNF_INSTALLEDDRIVER 0x00040000 // This driver node is currently i nstalled on the device. #define DNF_INSTALLEDDRIVER 0x00040000 // This driver node is currently i nstalled on the device.
#define DNF_ALWAYSEXCLUDEFROMLIST 0x00080000 // If set, this driver is not even displayed in #define DNF_ALWAYSEXCLUDEFROMLIST 0x00080000 // If set, this driver is not even displayed in
// alternative platform either. // alternative platform either.
#define DNF_INBOX_DRIVER 0x00100000 // This driver node came from an I NF that shipped with Windows. #define DNF_INBOX_DRIVER 0x00100000 // This driver node came from an I NF that shipped with Windows.
#endif // _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN #endif // _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN
#define DNF_UNUSED_21 0x00200000 #if _SETUPAPI_VER >= _WIN32_WINNT_WIN7
#define DNF_REQUESTADDITIONALSOFTWARE 0x00200000 // This driver is only part
of a software solution needed
// by this device
#endif // _SETUPAPI_VER >= _WIN32_WINNT_WIN7
#define DNF_UNUSED_22 0x00400000 #define DNF_UNUSED_22 0x00400000
#define DNF_UNUSED_23 0x00800000 #define DNF_UNUSED_23 0x00800000
#define DNF_UNUSED_24 0x01000000 #define DNF_UNUSED_24 0x01000000
#define DNF_UNUSED_25 0x02000000 #define DNF_UNUSED_25 0x02000000
#define DNF_UNUSED_26 0x04000000 #define DNF_UNUSED_26 0x04000000
#define DNF_UNUSED_27 0x08000000 #define DNF_UNUSED_27 0x08000000
#define DNF_UNUSED_28 0x10000000 #define DNF_UNUSED_28 0x10000000
#define DNF_UNUSED_29 0x20000000 #define DNF_UNUSED_29 0x20000000
#define DNF_UNUSED_30 0x40000000 #define DNF_UNUSED_30 0x40000000
#define DNF_UNUSED_31 0x80000000 #define DNF_UNUSED_31 0x80000000
skipping to change at line 3120 skipping to change at line 3124
#if _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN #if _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN
#define SP_COPY_WINDOWS_SIGNED 0x1000000 // BuildLab or WinSE signed #define SP_COPY_WINDOWS_SIGNED 0x1000000 // BuildLab or WinSE signed
#define SP_COPY_PNPLOCKED 0x2000000 // Used with the signature flag #define SP_COPY_PNPLOCKED 0x2000000 // Used with the signature flag
#define SP_COPY_IN_USE_TRY_RENAME 0x4000000 // If file in use, try to rename the target first #define SP_COPY_IN_USE_TRY_RENAME 0x4000000 // If file in use, try to rename the target first
#define SP_COPY_INBOX_INF 0x8000000 // Referred by CopyFiles of inbo x inf #define SP_COPY_INBOX_INF 0x8000000 // Referred by CopyFiles of inbo x inf
#endif //_SETUPAPI_VER >= _WIN32_WINNT_LONGHORN #endif //_SETUPAPI_VER >= _WIN32_WINNT_LONGHORN
#if _SETUPAPI_VER >= _WIN32_WINNT_WIN7
#define SP_COPY_HARDLINK 0x10000000 // Copy using hardlink, if possi
ble
#endif
#if _SETUPAPI_VER >= _WIN32_WINNT_WINXP #if _SETUPAPI_VER >= _WIN32_WINNT_WINXP
// //
// Flags passed to Backup notification // Flags passed to Backup notification
// //
#define SP_BACKUP_BACKUPPASS 0x00000001 // file backed up during backup pass #define SP_BACKUP_BACKUPPASS 0x00000001 // file backed up during backup pass
#define SP_BACKUP_DEMANDPASS 0x00000002 // file backed up on demand #define SP_BACKUP_DEMANDPASS 0x00000002 // file backed up on demand
#define SP_BACKUP_SPECIAL 0x00000004 // if set, special type of backu p #define SP_BACKUP_SPECIAL 0x00000004 // if set, special type of backu p
#define SP_BACKUP_BOOTFILE 0x00000008 // file marked with COPYFLG_REPL ACE_BOOT_FILE #define SP_BACKUP_BOOTFILE 0x00000008 // file marked with COPYFLG_REPL ACE_BOOT_FILE
skipping to change at line 4351 skipping to change at line 4361
// //
// Flags for SetupInstallServicesFromInfSection(Ex). These flags are also used // Flags for SetupInstallServicesFromInfSection(Ex). These flags are also used
// in the flags field of AddService or DelService lines in a device INF. Some // in the flags field of AddService or DelService lines in a device INF. Some
// of these flags are not permitted in the non-Ex API. These flags are marked // of these flags are not permitted in the non-Ex API. These flags are marked
// as such below. // as such below.
// //
// //
// (AddService) move service's tag to front of its group order list // (AddService) move service's tag to front of its group order list
// //
#define SPSVCINST_TAGTOFRONT (0x00000001) #define SPSVCINST_TAGTOFRONT (0x00000001)
// //
// (AddService) **Ex API only** mark this service as the function driver for the // (AddService) **Ex API only** mark this service as the function driver for the
// device being installed // device being installed
// //
#define SPSVCINST_ASSOCSERVICE (0x00000002) #define SPSVCINST_ASSOCSERVICE (0x00000002)
// //
// (DelService) delete the associated event log entry for a service specified in // (DelService) delete the associated event log entry for a service specified in
// a DelService entry // a DelService entry
// //
#define SPSVCINST_DELETEEVENTLOGENTRY (0x00000004) #define SPSVCINST_DELETEEVENTLOGENTRY (0x00000004)
// //
// (AddService) don't overwrite display name if it already exists // (AddService) don't overwrite display name if it already exists
// //
#define SPSVCINST_NOCLOBBER_DISPLAYNAME (0x00000008) #define SPSVCINST_NOCLOBBER_DISPLAYNAME (0x00000008)
// //
// (AddService) don't overwrite start type value if service already exists // (AddService) don't overwrite start type value if service already exists
// //
#define SPSVCINST_NOCLOBBER_STARTTYPE (0x00000010) #define SPSVCINST_NOCLOBBER_STARTTYPE (0x00000010)
// //
// (AddService) don't overwrite error control value if service already exists // (AddService) don't overwrite error control value if service already exists
// //
#define SPSVCINST_NOCLOBBER_ERRORCONTROL (0x00000020) #define SPSVCINST_NOCLOBBER_ERRORCONTROL (0x00000020)
// //
// (AddService) don't overwrite load order group if it already exists // (AddService) don't overwrite load order group if it already exists
// //
#define SPSVCINST_NOCLOBBER_LOADORDERGROUP (0x00000040) #define SPSVCINST_NOCLOBBER_LOADORDERGROUP (0x00000040)
// //
// (AddService) don't overwrite dependencies list if it already exists // (AddService) don't overwrite dependencies list if it already exists
// //
#define SPSVCINST_NOCLOBBER_DEPENDENCIES (0x00000080) #define SPSVCINST_NOCLOBBER_DEPENDENCIES (0x00000080)
// //
// (AddService) don't overwrite description if it already exists // (AddService) don't overwrite description if it already exists
// //
#define SPSVCINST_NOCLOBBER_DESCRIPTION (0x00000100) #define SPSVCINST_NOCLOBBER_DESCRIPTION (0x00000100)
// //
// (DelService) stop the associated service specified in // (DelService) stop the associated service specified in
// a DelService entry before deleting the service // a DelService entry before deleting the service
// //
#define SPSVCINST_STOPSERVICE (0x00000200) #define SPSVCINST_STOPSERVICE (0x00000200)
#if _SETUPAPI_VER >= _WIN32_WINNT_WINXP #if _SETUPAPI_VER >= _WIN32_WINNT_WINXP
// //
// (AddService) force overwrite of security settings // (AddService) force overwrite of security settings
// //
#define SPSVCINST_CLOBBER_SECURITY (0x00000400) #define SPSVCINST_CLOBBER_SECURITY (0x00000400)
#endif // _SETUPAPI_VER >= _WIN32_WINNT_WINXP #endif // _SETUPAPI_VER >= _WIN32_WINNT_WINXP
#if _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN #if _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN
// //
// (Start Service) start a service manually after install // (Start Service) start a service manually after install
// //
#define SPSVCINST_STARTSERVICE (0x00000800) #define SPSVCINST_STARTSERVICE (0x00000800)
#endif // _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN #endif // _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN
#if _SETUPAPI_VER >= _WIN32_WINNT_WIN7
//
// (AddService) don't overwrite required privileges list if it already exists
//
#define SPSVCINST_NOCLOBBER_REQUIREDPRIVILEGES (0x00001000)
#endif // _SETUPAPI_VER >= _WIN32_WINNT_WIN7
WINSETUPAPI WINSETUPAPI
BOOL BOOL
WINAPI WINAPI
SetupInstallServicesFromInfSectionA( SetupInstallServicesFromInfSectionA(
__in HINF InfHandle, __in HINF InfHandle,
__in PCSTR SectionName, __in PCSTR SectionName,
__in DWORD Flags __in DWORD Flags
); );
WINSETUPAPI WINSETUPAPI
skipping to change at line 4706 skipping to change at line 4724
SetupCloseLog ( SetupCloseLog (
VOID VOID
); );
// //
// Text log for INF debugging // Text log for INF debugging
// //
#if _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN #if _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN
WINSETUPAPI
SP_LOG_TOKEN SP_LOG_TOKEN
WINAPI
SetupGetThreadLogToken( SetupGetThreadLogToken(
VOID VOID
); );
WINSETUPAPI
VOID VOID
WINAPI
SetupSetThreadLogToken( SetupSetThreadLogToken(
__in SP_LOG_TOKEN LogToken __in SP_LOG_TOKEN LogToken
); );
WINSETUPAPI
VOID VOID
WINAPI
SetupWriteTextLog( SetupWriteTextLog(
__in SP_LOG_TOKEN LogToken, __in SP_LOG_TOKEN LogToken,
__in DWORD Category, __in DWORD Category,
__in DWORD Flags, __in DWORD Flags,
__in PCSTR MessageStr, __in PCSTR MessageStr,
... ...
); );
WINSETUPAPI
VOID VOID
WINAPI
SetupWriteTextLogError( SetupWriteTextLogError(
__in SP_LOG_TOKEN LogToken, __in SP_LOG_TOKEN LogToken,
__in DWORD Category, __in DWORD Category,
__in DWORD LogFlags, __in DWORD LogFlags,
__in DWORD Error, __in DWORD Error,
__in PCSTR MessageStr, __in PCSTR MessageStr,
... ...
); );
WINSETUPAPI
VOID VOID
WINAPI
SetupWriteTextLogInfLine( SetupWriteTextLogInfLine(
__in SP_LOG_TOKEN LogToken, __in SP_LOG_TOKEN LogToken,
__in DWORD Flags, __in DWORD Flags,
__in HINF InfHandle, __in HINF InfHandle,
__in PINFCONTEXT Context __in PINFCONTEXT Context
); );
#endif // _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN #endif // _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN
// //
skipping to change at line 4973 skipping to change at line 5001
#endif #endif
WINSETUPAPI WINSETUPAPI
BOOL BOOL
WINAPI WINAPI
SetupDiGetDeviceInstanceIdA( SetupDiGetDeviceInstanceIdA(
__in HDEVINFO DeviceInfoSet, __in HDEVINFO DeviceInfoSet,
__in PSP_DEVINFO_DATA DeviceInfoData, __in PSP_DEVINFO_DATA DeviceInfoData,
__out_ecount_opt(DeviceInstanceIdSize) PSTR DeviceInstanceId, __out_ecount_opt(DeviceInstanceIdSize) PSTR DeviceInstanceId,
__in DWORD DeviceInstanceIdSize, __in DWORD DeviceInstanceIdSize,
__out_opt __deref_out_range(0, MAX_DEVICE_ID_LEN) PDWORD RequiredSize __out_opt PDWORD RequiredSize
); );
WINSETUPAPI WINSETUPAPI
BOOL BOOL
WINAPI WINAPI
SetupDiGetDeviceInstanceIdW( SetupDiGetDeviceInstanceIdW(
__in HDEVINFO DeviceInfoSet, __in HDEVINFO DeviceInfoSet,
__in PSP_DEVINFO_DATA DeviceInfoData, __in PSP_DEVINFO_DATA DeviceInfoData,
__out_ecount_opt(DeviceInstanceIdSize) PWSTR DeviceInstanceId, __out_ecount_opt(DeviceInstanceIdSize) PWSTR DeviceInstanceId,
__in DWORD DeviceInstanceIdSize, __in DWORD DeviceInstanceIdSize,
__out_opt __deref_out_range(0, MAX_DEVICE_ID_LEN) PDWORD RequiredSize __out_opt PDWORD RequiredSize
); );
#ifdef UNICODE #ifdef UNICODE
#define SetupDiGetDeviceInstanceId SetupDiGetDeviceInstanceIdW #define SetupDiGetDeviceInstanceId SetupDiGetDeviceInstanceIdW
#else #else
#define SetupDiGetDeviceInstanceId SetupDiGetDeviceInstanceIdA #define SetupDiGetDeviceInstanceId SetupDiGetDeviceInstanceIdA
#endif #endif
WINSETUPAPI WINSETUPAPI
BOOL BOOL
skipping to change at line 6252 skipping to change at line 6280
#define SPDRP_EXCLUSIVE (0x0000001A) // Device is exclusive-a ccess (R/W) #define SPDRP_EXCLUSIVE (0x0000001A) // Device is exclusive-a ccess (R/W)
#define SPDRP_CHARACTERISTICS (0x0000001B) // Device Characteristic s (R/W) #define SPDRP_CHARACTERISTICS (0x0000001B) // Device Characteristic s (R/W)
#define SPDRP_ADDRESS (0x0000001C) // Device Address (R) #define SPDRP_ADDRESS (0x0000001C) // Device Address (R)
#define SPDRP_UI_NUMBER_DESC_FORMAT (0X0000001D) // UiNumberDescFormat (R /W) #define SPDRP_UI_NUMBER_DESC_FORMAT (0X0000001D) // UiNumberDescFormat (R /W)
#define SPDRP_DEVICE_POWER_DATA (0x0000001E) // Device Power Data (R) #define SPDRP_DEVICE_POWER_DATA (0x0000001E) // Device Power Data (R)
#define SPDRP_REMOVAL_POLICY (0x0000001F) // Removal Policy (R) #define SPDRP_REMOVAL_POLICY (0x0000001F) // Removal Policy (R)
#define SPDRP_REMOVAL_POLICY_HW_DEFAULT (0x00000020) // Hardware Removal Poli cy (R) #define SPDRP_REMOVAL_POLICY_HW_DEFAULT (0x00000020) // Hardware Removal Poli cy (R)
#define SPDRP_REMOVAL_POLICY_OVERRIDE (0x00000021) // Removal Policy Overri de (RW) #define SPDRP_REMOVAL_POLICY_OVERRIDE (0x00000021) // Removal Policy Overri de (RW)
#define SPDRP_INSTALL_STATE (0x00000022) // Device Install State (R) #define SPDRP_INSTALL_STATE (0x00000022) // Device Install State (R)
#define SPDRP_LOCATION_PATHS (0x00000023) // Device Location Paths (R) #define SPDRP_LOCATION_PATHS (0x00000023) // Device Location Paths (R)
#define SPDRP_BASE_CONTAINERID (0x00000024) // Base ContainerID (R)
#define SPDRP_MAXIMUM_PROPERTY (0x00000024) // Upper bound on ordina ls #define SPDRP_MAXIMUM_PROPERTY (0x00000025) // Upper bound on ordina ls
// //
// Class registry property codes // Class registry property codes
// (Codes marked as read-only (R) may only be used for // (Codes marked as read-only (R) may only be used for
// SetupDiGetClassRegistryProperty) // SetupDiGetClassRegistryProperty)
// //
// These values should cover the same set of registry properties // These values should cover the same set of registry properties
// as defined by the CM_CRP codes in cfgmgr32.h. // as defined by the CM_CRP codes in cfgmgr32.h.
// they should also have a 1:1 correspondence with Device registers, where appli cable // they should also have a 1:1 correspondence with Device registers, where appli cable
// but no overlap otherwise // but no overlap otherwise
skipping to change at line 6306 skipping to change at line 6335
__in DWORD PropertyBufferSize, __in DWORD PropertyBufferSize,
__out_opt PDWORD RequiredSize __out_opt PDWORD RequiredSize
); );
#ifdef UNICODE #ifdef UNICODE
#define SetupDiGetDeviceRegistryProperty SetupDiGetDeviceRegistryPropertyW #define SetupDiGetDeviceRegistryProperty SetupDiGetDeviceRegistryPropertyW
#else #else
#define SetupDiGetDeviceRegistryProperty SetupDiGetDeviceRegistryPropertyA #define SetupDiGetDeviceRegistryProperty SetupDiGetDeviceRegistryPropertyA
#endif #endif
#if _SETUPAPI_VER >= _WIN32_WINNT_WINXP
WINSETUPAPI WINSETUPAPI
BOOL BOOL
WINAPI WINAPI
SetupDiGetClassRegistryPropertyA( SetupDiGetClassRegistryPropertyA(
__in CONST GUID *ClassGuid, __in CONST GUID *ClassGuid,
__in DWORD Property, __in DWORD Property,
__out_opt PDWORD PropertyRegDataType, __out_opt PDWORD PropertyRegDataType,
__out_bcount(PropertyBufferSize) PBYTE PropertyBuffer, __out_bcount(PropertyBufferSize) PBYTE PropertyBuffer,
__in DWORD PropertyBufferSize, __in DWORD PropertyBufferSize,
__out_opt PDWORD RequiredSize, __out_opt PDWORD RequiredSize,
skipping to change at line 6340 skipping to change at line 6371
__in_opt PCWSTR MachineName, __in_opt PCWSTR MachineName,
__reserved PVOID Reserved __reserved PVOID Reserved
); );
#ifdef UNICODE #ifdef UNICODE
#define SetupDiGetClassRegistryProperty SetupDiGetClassRegistryPropertyW #define SetupDiGetClassRegistryProperty SetupDiGetClassRegistryPropertyW
#else #else
#define SetupDiGetClassRegistryProperty SetupDiGetClassRegistryPropertyA #define SetupDiGetClassRegistryProperty SetupDiGetClassRegistryPropertyA
#endif #endif
#endif // _SETUPAPI_VER >= _WIN32_WINNT_WINXP
WINSETUPAPI WINSETUPAPI
BOOL BOOL
WINAPI WINAPI
SetupDiSetDeviceRegistryPropertyA( SetupDiSetDeviceRegistryPropertyA(
__in HDEVINFO DeviceInfoSet, __in HDEVINFO DeviceInfoSet,
__inout PSP_DEVINFO_DATA DeviceInfoData, __inout PSP_DEVINFO_DATA DeviceInfoData,
__in DWORD Property, __in DWORD Property,
__in_bcount_opt(PropertyBufferSize) CONST BYTE *PropertyBuffer, __in_bcount_opt(PropertyBufferSize) CONST BYTE *PropertyBuffer,
__in DWORD PropertyBufferSize __in DWORD PropertyBufferSize
); );
skipping to change at line 6368 skipping to change at line 6401
__in_bcount_opt(PropertyBufferSize) CONST BYTE *PropertyBuffer, __in_bcount_opt(PropertyBufferSize) CONST BYTE *PropertyBuffer,
__in DWORD PropertyBufferSize __in DWORD PropertyBufferSize
); );
#ifdef UNICODE #ifdef UNICODE
#define SetupDiSetDeviceRegistryProperty SetupDiSetDeviceRegistryPropertyW #define SetupDiSetDeviceRegistryProperty SetupDiSetDeviceRegistryPropertyW
#else #else
#define SetupDiSetDeviceRegistryProperty SetupDiSetDeviceRegistryPropertyA #define SetupDiSetDeviceRegistryProperty SetupDiSetDeviceRegistryPropertyA
#endif #endif
#if _SETUPAPI_VER >= _WIN32_WINNT_WINXP
WINSETUPAPI WINSETUPAPI
BOOL BOOL
WINAPI WINAPI
SetupDiSetClassRegistryPropertyA( SetupDiSetClassRegistryPropertyA(
__in CONST GUID *ClassGuid, __in CONST GUID *ClassGuid,
__in DWORD Property, __in DWORD Property,
__in_bcount_opt(PropertyBufferSize) CONST BYTE *PropertyBuffer, __in_bcount_opt(PropertyBufferSize) CONST BYTE *PropertyBuffer,
__in DWORD PropertyBufferSize, __in DWORD PropertyBufferSize,
__in_opt PCSTR MachineName, __in_opt PCSTR MachineName,
__reserved PVOID Reserved __reserved PVOID Reserved
skipping to change at line 6398 skipping to change at line 6433
__in_opt PCWSTR MachineName, __in_opt PCWSTR MachineName,
__reserved PVOID Reserved __reserved PVOID Reserved
); );
#ifdef UNICODE #ifdef UNICODE
#define SetupDiSetClassRegistryProperty SetupDiSetClassRegistryPropertyW #define SetupDiSetClassRegistryProperty SetupDiSetClassRegistryPropertyW
#else #else
#define SetupDiSetClassRegistryProperty SetupDiSetClassRegistryPropertyA #define SetupDiSetClassRegistryProperty SetupDiSetClassRegistryPropertyA
#endif #endif
#endif // _SETUPAPI_VER >= _WIN32_WINNT_WINXP
WINSETUPAPI WINSETUPAPI
BOOL BOOL
WINAPI WINAPI
SetupDiGetDeviceInstallParamsA( SetupDiGetDeviceInstallParamsA(
__in HDEVINFO DeviceInfoSet, __in HDEVINFO DeviceInfoSet,
__in_opt PSP_DEVINFO_DATA DeviceInfoData, __in_opt PSP_DEVINFO_DATA DeviceInfoData,
__out PSP_DEVINSTALL_PARAMS_A DeviceInstallParams __out PSP_DEVINSTALL_PARAMS_A DeviceInstallParams
); );
WINSETUPAPI WINSETUPAPI
skipping to change at line 6567 skipping to change at line 6604
__out_opt HICON *LargeIcon, __out_opt HICON *LargeIcon,
__out_opt PINT MiniIconIndex __out_opt PINT MiniIconIndex
); );
#if _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN #if _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN
WINSETUPAPI WINSETUPAPI
BOOL BOOL
WINAPI WINAPI
SetupDiLoadDeviceIcon( SetupDiLoadDeviceIcon(
__in HDEVINFO DeviceInfoSet, __in HDEVINFO DeviceInfoSet,
__in PSP_DEVINFO_DATA DeviceInfoData, __in PSP_DEVINFO_DATA DeviceInfoData,
__in UINT cxIcon, __in UINT cxIcon,
__in UINT cyIcon, __in UINT cyIcon,
__in DWORD Flags, __in DWORD Flags,
__out HICON *hIcon __out HICON *hIcon
); );
#endif // _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN #endif // _SETUPAPI_VER >= _WIN32_WINNT_LONGHORN
// //
// Flags controlling the drawing of mini-icons // Flags controlling the drawing of mini-icons
// //
#define DMI_MASK 0x00000001 #define DMI_MASK 0x00000001
#define DMI_BKCOLOR 0x00000002 #define DMI_BKCOLOR 0x00000002
#define DMI_USERECT 0x00000004 #define DMI_USERECT 0x00000004
 End of changes. 35 change blocks. 
23 lines changed or deleted 62 lines changed or added

This html diff was produced by rfcdiff 1.41.