5035 lines
250 KiB
ObjectPascal
5035 lines
250 KiB
ObjectPascal
{******************************************************************}
|
|
{ }
|
|
{ Borland Delphi Runtime Library }
|
|
{ Config Manager API interface unit }
|
|
{ }
|
|
{ Portions created by Microsoft are }
|
|
{ Copyright (c) Microsoft Corporation. All rights reserved. }
|
|
{ }
|
|
{ The original file is: cfgmgr32.h, released August 2001. }
|
|
{ The original Pascal code is: CfgMgr32.pas, released 5 Nov 2004. }
|
|
{ The initial developer of the Pascal code is Robert Marquardt }
|
|
{ (robert_marquardt att gmx dott de) }
|
|
{ }
|
|
{ Portions created by Robert Marquardt are }
|
|
{ Copyright (C) 2004 Robert Marquardt. }
|
|
{ }
|
|
{ Contributor(s): }
|
|
{ }
|
|
{ Obtained through: }
|
|
{ Joint Endeavour of Delphi Innovators (Project JEDI) }
|
|
{ }
|
|
{ You may retrieve the latest version of this file at the Project }
|
|
{ JEDI home page, located at http://delphi-jedi.org }
|
|
{ }
|
|
{ The contents of this file are used with permission, subject to }
|
|
{ the Mozilla Public License Version 1.1 (the "License"); you may }
|
|
{ not use this file except in compliance with the License. You may }
|
|
{ obtain a copy of the License at }
|
|
{ http://www.mozilla.org/MPL/MPL-1.1.html }
|
|
{ }
|
|
{ Software distributed under the License is distributed on an }
|
|
{ "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or }
|
|
{ implied. See the License for the specific language governing }
|
|
{ rights and limitations under the License. }
|
|
{ }
|
|
{******************************************************************}
|
|
|
|
unit CfgMgr32;
|
|
|
|
{$I windowsversion.inc}
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows,
|
|
Cfg, WinConvTypes, SetupApi;
|
|
|
|
{$WEAKPACKAGEUNIT ON}
|
|
|
|
// (rom) this is the switch to change between static and dynamic linking.
|
|
// (rom) it is enabled by default here.
|
|
// (rom) To disable simply change the '$' to a '.'.
|
|
{$DEFINE CFGMGR32_LINKONREQUEST}
|
|
|
|
{$HPPEMIT '#include "cfgmgr32.h"'}
|
|
|
|
//--------------------------------------------------------------
|
|
// General size definitions
|
|
//--------------------------------------------------------------
|
|
|
|
const
|
|
MAX_DEVICE_ID_LEN = 200;
|
|
{$EXTERNALSYM MAX_DEVICE_ID_LEN}
|
|
MAX_DEVNODE_ID_LEN = MAX_DEVICE_ID_LEN;
|
|
{$EXTERNALSYM MAX_DEVNODE_ID_LEN}
|
|
|
|
MAX_GUID_STRING_LEN = 39; // 38 chars + terminator null
|
|
{$EXTERNALSYM MAX_GUID_STRING_LEN}
|
|
MAX_CLASS_NAME_LEN = 32;
|
|
{$EXTERNALSYM MAX_CLASS_NAME_LEN}
|
|
MAX_PROFILE_LEN = 80;
|
|
{$EXTERNALSYM MAX_PROFILE_LEN}
|
|
|
|
MAX_CONFIG_VALUE = 9999;
|
|
{$EXTERNALSYM MAX_CONFIG_VALUE}
|
|
MAX_INSTANCE_VALUE = 9999;
|
|
{$EXTERNALSYM MAX_INSTANCE_VALUE}
|
|
|
|
MAX_MEM_REGISTERS = 9; // Win95 compatibility--not applicable to 32-bit ConfigMgr
|
|
{$EXTERNALSYM MAX_MEM_REGISTERS}
|
|
MAX_IO_PORTS = 20; // Win95 compatibility--not applicable to 32-bit ConfigMgr
|
|
{$EXTERNALSYM MAX_IO_PORTS}
|
|
MAX_IRQS = 7; // Win95 compatibility--not applicable to 32-bit ConfigMgr
|
|
{$EXTERNALSYM MAX_IRQS}
|
|
MAX_DMA_CHANNELS = 7; // Win95 compatibility--not applicable to 32-bit ConfigMgr
|
|
{$EXTERNALSYM MAX_DMA_CHANNELS}
|
|
|
|
DWORD_MAX = $FFFFFFFF;
|
|
{$EXTERNALSYM DWORD_MAX}
|
|
DWORDLONG_MAX = $FFFFFFFFFFFFFFFF;
|
|
{$EXTERNALSYM DWORDLONG_MAX}
|
|
|
|
CONFIGMG_VERSION = $0400;
|
|
{$EXTERNALSYM CONFIGMG_VERSION}
|
|
|
|
type
|
|
PDWORDLONG = ^DWORDLONG;
|
|
{$EXTERNALSYM PDWORDLONG}
|
|
DWORDLONG = Int64; // (rom) no unsigned Int64 available in Delphi
|
|
{$EXTERNALSYM DWORDLONG}
|
|
|
|
//--------------------------------------------------------------
|
|
// Data types
|
|
//--------------------------------------------------------------
|
|
|
|
//
|
|
// Standardized Return Value data type
|
|
//
|
|
RETURN_TYPE = DWORD;
|
|
{$EXTERNALSYM RETURN_TYPE}
|
|
CONFIGRET = RETURN_TYPE;
|
|
{$EXTERNALSYM CONFIGRET}
|
|
|
|
//
|
|
// Device Instance Handle data type
|
|
//
|
|
PDEVNODE = ^DEVNODE;
|
|
{$EXTERNALSYM PDEVNODE}
|
|
DEVNODE = DWORD;
|
|
{$EXTERNALSYM DEVNODE}
|
|
PDEVINST = ^DEVINST;
|
|
{$EXTERNALSYM PDEVINST}
|
|
DEVINST = DWORD;
|
|
{$EXTERNALSYM DEVINST}
|
|
|
|
//
|
|
// Device Instance Identifier data type
|
|
// The device instance ID specifies the registry path, relative to the
|
|
// Enum key , for a device instance. For example: \Root\*PNP0500\0000.
|
|
//
|
|
DEVNODEID_A = PAnsiChar; // Device ID ANSI name.
|
|
{$EXTERNALSYM DEVNODEID_A}
|
|
DEVNODEID_W = PWideChar; // Device ID Unicode name.
|
|
{$EXTERNALSYM DEVNODEID_W}
|
|
DEVINSTID_A = PAnsiChar; // Device ID ANSI name.
|
|
{$EXTERNALSYM DEVINSTID_A}
|
|
DEVINSTID_W = PWideChar; // Device ID Unicode name.
|
|
{$EXTERNALSYM DEVINSTID_W}
|
|
{$IFDEF UNICODE}
|
|
DEVNODEID = DEVNODEID_W;
|
|
DEVINSTID = DEVINSTID_W;
|
|
{$ELSE}
|
|
DEVNODEID = DEVNODEID_A;
|
|
DEVINSTID = DEVINSTID_A;
|
|
{$ENDIF UNICODE}
|
|
{$EXTERNALSYM DEVNODEID}
|
|
{$EXTERNALSYM DEVINSTID}
|
|
|
|
//
|
|
// Logical Configuration Handle data type
|
|
//
|
|
LOG_CONF = DWORD_PTR;
|
|
{$EXTERNALSYM LOG_CONF}
|
|
PLOG_CONF = ^LOG_CONF;
|
|
{$EXTERNALSYM PLOG_CONF}
|
|
|
|
//
|
|
// Resource Descriptor Handle data type
|
|
//
|
|
RES_DES = DWORD_PTR;
|
|
{$EXTERNALSYM RES_DES}
|
|
PRES_DES = ^RES_DES;
|
|
{$EXTERNALSYM PRES_DES}
|
|
|
|
//
|
|
// Resource ID data type (may take any of the ResType_* values)
|
|
//
|
|
RESOURCEID = ULONG;
|
|
{$EXTERNALSYM RESOURCEID}
|
|
PRESOURCEID = ^RESOURCEID;
|
|
{$EXTERNALSYM PRESOURCEID}
|
|
|
|
//
|
|
// Priority data type (may take any of the LCPRI_* values)
|
|
//
|
|
PRIORITY = ULONG;
|
|
{$EXTERNALSYM PRIORITY}
|
|
PPRIORITY = ^PRIORITY;
|
|
{$EXTERNALSYM PPRIORITY}
|
|
|
|
//
|
|
// Range List Handle data type
|
|
//
|
|
RANGE_LIST = DWORD_PTR;
|
|
{$EXTERNALSYM RANGE_LIST}
|
|
PRANGE_LIST = ^RANGE_LIST;
|
|
{$EXTERNALSYM PRANGE_LIST}
|
|
|
|
//
|
|
// Range Element Handle data type
|
|
//
|
|
RANGE_ELEMENT = DWORD_PTR;
|
|
{$EXTERNALSYM RANGE_ELEMENT}
|
|
PRANGE_ELEMENT = ^RANGE_ELEMENT;
|
|
{$EXTERNALSYM PRANGE_ELEMENT}
|
|
|
|
//
|
|
// Machine Handle data type
|
|
//
|
|
HMACHINE = THandle;
|
|
{$EXTERNALSYM HMACHINE}
|
|
PHMACHINE = ^HMACHINE;
|
|
{$EXTERNALSYM PHMACHINE}
|
|
|
|
//
|
|
// Conflict List data types
|
|
//
|
|
CONFLICT_LIST = ULONG_PTR;
|
|
{$EXTERNALSYM CONFLICT_LIST}
|
|
PCONFLICT_LIST = ^CONFLICT_LIST;
|
|
{$EXTERNALSYM PCONFLICT_LIST}
|
|
|
|
PCONFLICT_DETAILS_A = ^CONFLICT_DETAILS_A;
|
|
{$EXTERNALSYM PCONFLICT_DETAILS_A}
|
|
CONFLICT_DETAILS_A = packed record
|
|
CD_ulSize: ULONG; // size of structure, ie: sizeof(CONFLICT_DETAILS)
|
|
CD_ulMask: ULONG; // indicates what information is required/valid
|
|
CD_dnDevInst: DEVINST; // filled with DevInst of conflicting device if CM_CDMASK_DEVINST set
|
|
CD_rdResDes: RES_DES; // filled with a ResDes of conflict if CM_CDMASK_RESDES set
|
|
CD_ulFlags: ULONG; // various flags regarding conflict
|
|
CD_szDescription: array [0..MAX_PATH-1] of Char; // description of conflicting device
|
|
end;
|
|
{$EXTERNALSYM CONFLICT_DETAILS_A}
|
|
|
|
PCONFLICT_DETAILS_W = ^CONFLICT_DETAILS_W;
|
|
{$EXTERNALSYM PCONFLICT_DETAILS_W}
|
|
CONFLICT_DETAILS_W = packed record
|
|
CD_ulSize: ULONG; // size of structure, ie: sizeof(CONFLICT_DETAILS)
|
|
CD_ulMask: ULONG; // indicates what information is required/valid
|
|
CD_dnDevInst: DEVINST; // filled with DevInst of conflicting device if CM_CDMASK_DEVINST set
|
|
CD_rdResDes: RES_DES; // filled with a ResDes of conflict if CM_CDMASK_RESDES set
|
|
CD_ulFlags: ULONG; // various flags regarding conflict
|
|
CD_szDescription: array [0..MAX_PATH-1] of WideChar; // description of conflicting device
|
|
end;
|
|
{$EXTERNALSYM CONFLICT_DETAILS_W}
|
|
|
|
{$IFDEF UNICODE}
|
|
CONFLICT_DETAILS = CONFLICT_DETAILS_W;
|
|
PCONFLICT_DETAILS = PCONFLICT_DETAILS_W;
|
|
{$ELSE}
|
|
CONFLICT_DETAILS = CONFLICT_DETAILS_A;
|
|
PCONFLICT_DETAILS = PCONFLICT_DETAILS_A;
|
|
{$ENDIF UNICODE}
|
|
{$EXTERNALSYM CONFLICT_DETAILS}
|
|
{$EXTERNALSYM PCONFLICT_DETAILS}
|
|
|
|
const
|
|
CM_CDMASK_DEVINST = $00000001; // mask to retrieve CD_dnDevInst attribute for conflict
|
|
{$EXTERNALSYM CM_CDMASK_DEVINST}
|
|
CM_CDMASK_RESDES = $00000002; // mask to retrieve CD_rdResDes attribute for conflict
|
|
{$EXTERNALSYM CM_CDMASK_RESDES}
|
|
CM_CDMASK_FLAGS = $00000004; // mask to retrieve CD_ulFlags attribute for conflict
|
|
{$EXTERNALSYM CM_CDMASK_FLAGS}
|
|
CM_CDMASK_DESCRIPTION = $00000008; // mask to retrieve CD_szDescription attribute for conflict
|
|
{$EXTERNALSYM CM_CDMASK_DESCRIPTION}
|
|
CM_CDMASK_VALID = $0000000F; // valid bits
|
|
{$EXTERNALSYM CM_CDMASK_VALID}
|
|
|
|
CM_CDFLAGS_DRIVER = $00000001; // CD_ulFlags: CD_szDescription reports back legacy driver name
|
|
{$EXTERNALSYM CM_CDFLAGS_DRIVER}
|
|
CM_CDFLAGS_ROOT_OWNED = $00000002; // CD_ulFlags: Root owned device
|
|
{$EXTERNALSYM CM_CDFLAGS_ROOT_OWNED}
|
|
CM_CDFLAGS_RESERVED = $00000004; // CD_ulFlags: Specified range is not available for use
|
|
{$EXTERNALSYM CM_CDFLAGS_RESERVED}
|
|
|
|
type
|
|
REGDISPOSITION = ^ULONG;
|
|
{$EXTERNALSYM REGDISPOSITION}
|
|
|
|
//--------------------------------------------------------------
|
|
// Memory resource
|
|
//--------------------------------------------------------------
|
|
|
|
const
|
|
//
|
|
// Define the attribute flags for memory ranges. Each bit flag is
|
|
// identified by a constant bitmask. Following the bitmask definition,
|
|
// are the two possible values.
|
|
//
|
|
mMD_MemoryType = $1; // Bitmask, whether memory is writable
|
|
{$EXTERNALSYM mMD_MemoryType}
|
|
fMD_MemoryType = mMD_MemoryType; // compatibility
|
|
{$EXTERNALSYM fMD_MemoryType}
|
|
fMD_ROM = $0; // Memory range is read-only
|
|
{$EXTERNALSYM fMD_ROM}
|
|
fMD_RAM = $1; // Memory range may be written to
|
|
{$EXTERNALSYM fMD_RAM}
|
|
|
|
mMD_32_24 = $2; // Bitmask, memory is 24 or 32-bit
|
|
{$EXTERNALSYM mMD_32_24}
|
|
fMD_32_24 = mMD_32_24; // compatibility
|
|
{$EXTERNALSYM fMD_32_24}
|
|
fMD_24 = $0; // Memory range is 24-bit
|
|
{$EXTERNALSYM fMD_24}
|
|
fMD_32 = $2; // Memory range is 32-bit
|
|
{$EXTERNALSYM fMD_32}
|
|
|
|
mMD_Prefetchable = $4; // Bitmask,whether memory prefetchable
|
|
{$EXTERNALSYM mMD_Prefetchable}
|
|
fMD_Prefetchable = mMD_Prefetchable; // compatibility
|
|
{$EXTERNALSYM fMD_Prefetchable}
|
|
fMD_Pref = mMD_Prefetchable; // compatibility
|
|
{$EXTERNALSYM fMD_Pref}
|
|
fMD_PrefetchDisallowed = $0; // Memory range is not prefetchable
|
|
{$EXTERNALSYM fMD_PrefetchDisallowed}
|
|
fMD_PrefetchAllowed = $4; // Memory range is prefetchable
|
|
{$EXTERNALSYM fMD_PrefetchAllowed}
|
|
|
|
mMD_Readable = $8; // Bitmask,whether memory is readable
|
|
{$EXTERNALSYM mMD_Readable}
|
|
fMD_Readable = mMD_Readable; // compatibility
|
|
{$EXTERNALSYM fMD_Readable}
|
|
fMD_ReadAllowed = $0; // Memory range is readable
|
|
{$EXTERNALSYM fMD_ReadAllowed}
|
|
fMD_ReadDisallowed = $8; // Memory range is write-only
|
|
{$EXTERNALSYM fMD_ReadDisallowed}
|
|
|
|
mMD_CombinedWrite = $10; // Bitmask,supports write-behind
|
|
{$EXTERNALSYM mMD_CombinedWrite}
|
|
fMD_CombinedWrite = mMD_CombinedWrite; // compatibility
|
|
{$EXTERNALSYM fMD_CombinedWrite}
|
|
fMD_CombinedWriteDisallowed = $0; // no combined-write caching
|
|
{$EXTERNALSYM fMD_CombinedWriteDisallowed}
|
|
fMD_CombinedWriteAllowed = $10; // supports combined-write caching
|
|
{$EXTERNALSYM fMD_CombinedWriteAllowed}
|
|
|
|
mMD_Cacheable = $20; // Bitmask,whether memory is cacheable
|
|
{$EXTERNALSYM mMD_Cacheable}
|
|
fMD_NonCacheable = $0; // Memory range is non-cacheable
|
|
{$EXTERNALSYM fMD_NonCacheable}
|
|
fMD_Cacheable = $20; // Memory range is cacheable
|
|
{$EXTERNALSYM fMD_Cacheable}
|
|
|
|
type
|
|
//
|
|
// MEM_RANGE Structure
|
|
//
|
|
PMEM_RANGE = ^MEM_RANGE;
|
|
{$EXTERNALSYM PMEM_RANGE}
|
|
MEM_RANGE = packed record
|
|
MR_Align: DWORDLONG; // specifies mask for base alignment
|
|
MR_nBytes: ULONG; // specifies number of bytes required
|
|
MR_Min: DWORDLONG; // specifies minimum address of the range
|
|
MR_Max: DWORDLONG; // specifies maximum address of the range
|
|
MR_Flags: DWORD; // specifies flags describing range (fMD flags)
|
|
MR_Reserved: DWORD;
|
|
end;
|
|
{$EXTERNALSYM MEM_RANGE}
|
|
|
|
//
|
|
// MEM_DES structure
|
|
//
|
|
PMEM_DES = ^MEM_DES;
|
|
{$EXTERNALSYM PMEM_DES}
|
|
MEM_DES = packed record
|
|
MD_Count: DWORD; // number of MEM_RANGE structs in MEM_RESOURCE
|
|
MD_Type: DWORD; // size (in bytes) of MEM_RANGE (MType_Range)
|
|
MD_Alloc_Base: DWORDLONG; // base memory address of range allocated
|
|
MD_Alloc_End: DWORDLONG; // end of allocated range
|
|
MD_Flags: DWORD; // flags describing allocated range (fMD flags)
|
|
MD_Reserved: DWORD;
|
|
end;
|
|
{$EXTERNALSYM MEM_DES}
|
|
|
|
//
|
|
// MEM_RESOURCE structure
|
|
//
|
|
PMEM_RESOURCE = ^MEM_RESOURCE;
|
|
{$EXTERNALSYM PMEM_RESOURCE}
|
|
MEM_RESOURCE = packed record
|
|
MEM_Header: MEM_DES; // info about memory range list
|
|
MEM_Data: array [0..0] of MEM_RANGE; // list of memory ranges
|
|
end;
|
|
{$EXTERNALSYM MEM_RESOURCE}
|
|
|
|
const
|
|
//
|
|
// Define the size of each range structure
|
|
//
|
|
MType_Range = SizeOf(MEM_RANGE);
|
|
{$EXTERNALSYM MType_Range}
|
|
|
|
//--------------------------------------------------------------
|
|
// I/O Port Resource
|
|
//--------------------------------------------------------------
|
|
|
|
const
|
|
//
|
|
// Define the attribute flags for port resources. Each bit flag is
|
|
// identified by a constant bitmask. Following the bitmask definition,
|
|
// are the two possible values.
|
|
//
|
|
fIOD_PortType = $1; // Bitmask,whether port is IO or memory
|
|
{$EXTERNALSYM fIOD_PortType}
|
|
fIOD_Memory = $0; // Port resource really uses memory
|
|
{$EXTERNALSYM fIOD_Memory}
|
|
fIOD_IO = $1; // Port resource uses IO ports
|
|
{$EXTERNALSYM fIOD_IO}
|
|
fIOD_DECODE = $00fc; // decode flags
|
|
{$EXTERNALSYM fIOD_DECODE}
|
|
fIOD_10_BIT_DECODE = $0004;
|
|
{$EXTERNALSYM fIOD_10_BIT_DECODE}
|
|
fIOD_12_BIT_DECODE = $0008;
|
|
{$EXTERNALSYM fIOD_12_BIT_DECODE}
|
|
fIOD_16_BIT_DECODE = $0010;
|
|
{$EXTERNALSYM fIOD_16_BIT_DECODE}
|
|
fIOD_POSITIVE_DECODE = $0020;
|
|
{$EXTERNALSYM fIOD_POSITIVE_DECODE}
|
|
fIOD_PASSIVE_DECODE = $0040;
|
|
{$EXTERNALSYM fIOD_PASSIVE_DECODE}
|
|
fIOD_WINDOW_DECODE = $0080;
|
|
{$EXTERNALSYM fIOD_WINDOW_DECODE}
|
|
|
|
//
|
|
// these are for compatiblity
|
|
//
|
|
IO_ALIAS_10_BIT_DECODE = $00000004;
|
|
{$EXTERNALSYM IO_ALIAS_10_BIT_DECODE}
|
|
IO_ALIAS_12_BIT_DECODE = $00000010;
|
|
{$EXTERNALSYM IO_ALIAS_12_BIT_DECODE}
|
|
IO_ALIAS_16_BIT_DECODE = $00000000;
|
|
{$EXTERNALSYM IO_ALIAS_16_BIT_DECODE}
|
|
IO_ALIAS_POSITIVE_DECODE = $000000FF;
|
|
{$EXTERNALSYM IO_ALIAS_POSITIVE_DECODE}
|
|
|
|
type
|
|
//
|
|
// IO_RANGE structure
|
|
//
|
|
PIO_RANGE = ^IO_RANGE;
|
|
{$EXTERNALSYM PIO_RANGE}
|
|
IO_RANGE = packed record
|
|
IOR_Align: DWORDLONG; // mask for base alignment
|
|
IOR_nPorts: DWORD; // number of ports
|
|
IOR_Min: DWORDLONG; // minimum port address
|
|
IOR_Max: DWORDLONG; // maximum port address
|
|
IOR_RangeFlags: DWORD; // flags for this port range
|
|
IOR_Alias: DWORDLONG; // multiplier that generates aliases for port(s)
|
|
end;
|
|
{$EXTERNALSYM IO_RANGE}
|
|
|
|
//
|
|
// IO_DES structure
|
|
//
|
|
PIO_DES = ^IO_DES;
|
|
{$EXTERNALSYM PIO_DES}
|
|
IO_DES = packed record
|
|
IOD_Count: DWORD; // number of IO_RANGE structs in IO_RESOURCE
|
|
IOD_Type: DWORD; // size (in bytes) of IO_RANGE (IOType_Range)
|
|
IOD_Alloc_Base: DWORDLONG; // base of allocated port range
|
|
IOD_Alloc_End: DWORDLONG; // end of allocated port range
|
|
IOD_DesFlags: DWORD; // flags relating to allocated port range
|
|
end;
|
|
{$EXTERNALSYM IO_DES}
|
|
|
|
//
|
|
// IO_RESOURCE
|
|
//
|
|
PIO_RESOURCE = ^IO_RESOURCE;
|
|
{$EXTERNALSYM PIO_RESOURCE}
|
|
IO_RESOURCE = packed record
|
|
IO_Header: IO_DES; // info about I/O port range list
|
|
IO_Data: array [0..0] of IO_RANGE; // list of I/O port ranges
|
|
end;
|
|
{$EXTERNALSYM IO_RESOURCE}
|
|
|
|
const
|
|
IOA_Local = $ff;
|
|
{$EXTERNALSYM IOA_Local}
|
|
|
|
//
|
|
// Define the size of each range structure
|
|
//
|
|
IOType_Range = SizeOf(IO_RANGE);
|
|
{$EXTERNALSYM IOType_Range}
|
|
|
|
//--------------------------------------------------------------
|
|
// DMA Resource
|
|
//--------------------------------------------------------------
|
|
|
|
const
|
|
//
|
|
// Define the attribute flags for a DMA resource range. Each bit flag is
|
|
// identified with a constant bitmask. Following the bitmask definition
|
|
// are the possible values.
|
|
//
|
|
mDD_Width = $3; // Bitmask, width of the DMA channel:
|
|
{$EXTERNALSYM mDD_Width}
|
|
fDD_BYTE = $0; // 8-bit DMA channel
|
|
{$EXTERNALSYM fDD_BYTE}
|
|
fDD_WORD = $1; // 16-bit DMA channel
|
|
{$EXTERNALSYM fDD_WORD}
|
|
fDD_DWORD = $2; // 32-bit DMA channel
|
|
{$EXTERNALSYM fDD_DWORD}
|
|
fDD_BYTE_AND_WORD = $3; // 8-bit and 16-bit DMA channel
|
|
{$EXTERNALSYM fDD_BYTE_AND_WORD}
|
|
|
|
mDD_BusMaster = $4; // Bitmask, whether bus mastering is supported
|
|
{$EXTERNALSYM mDD_BusMaster}
|
|
fDD_NoBusMaster = $0; // no bus mastering
|
|
{$EXTERNALSYM fDD_NoBusMaster}
|
|
fDD_BusMaster = $4; // bus mastering
|
|
{$EXTERNALSYM fDD_BusMaster}
|
|
|
|
mDD_Type = $18; // Bitmask, specifies type of DMA
|
|
{$EXTERNALSYM mDD_Type}
|
|
fDD_TypeStandard = $00; // standard DMA
|
|
{$EXTERNALSYM fDD_TypeStandard}
|
|
fDD_TypeA = $08; // Type-A DMA
|
|
{$EXTERNALSYM fDD_TypeA}
|
|
fDD_TypeB = $10; // Type-B DMA
|
|
{$EXTERNALSYM fDD_TypeB}
|
|
fDD_TypeF = $18; // Type-F DMA
|
|
{$EXTERNALSYM fDD_TypeF}
|
|
|
|
type
|
|
//
|
|
// DMA_RANGE structure
|
|
//
|
|
PDMA_RANGE = ^DMA_RANGE;
|
|
{$EXTERNALSYM PDMA_RANGE}
|
|
DMA_RANGE = packed record
|
|
DR_Min: ULONG; // minimum DMA port in the range
|
|
DR_Max: ULONG; // maximum DMA port in the range
|
|
DR_Flags: ULONG; // flags describing the range (fDD flags)
|
|
end;
|
|
{$EXTERNALSYM DMA_RANGE}
|
|
|
|
//
|
|
// DMA_DES structure
|
|
//
|
|
PDMA_DES = ^DMA_DES;
|
|
{$EXTERNALSYM PDMA_DES}
|
|
DMA_DES = packed record
|
|
DD_Count: DWORD; // number of DMA_RANGE structs in DMA_RESOURCE
|
|
DD_Type: DWORD; // size (in bytes) of DMA_RANGE struct (DType_Range)
|
|
DD_Flags: DWORD; // Flags describing DMA channel (fDD flags)
|
|
DD_Alloc_Chan: ULONG; // Specifies the DMA channel that was allocated
|
|
end;
|
|
{$EXTERNALSYM DMA_DES}
|
|
|
|
//
|
|
// DMA_RESOURCE
|
|
//
|
|
PDMA_RESOURCE = ^DMA_RESOURCE;
|
|
{$EXTERNALSYM PDMA_RESOURCE}
|
|
DMA_RESOURCE = packed record
|
|
DMA_Header: DMA_DES; // info about DMA channel range list
|
|
DMA_Data: array [0..0] of DMA_RANGE; // list of DMA ranges
|
|
end;
|
|
{$EXTERNALSYM DMA_RESOURCE}
|
|
|
|
const
|
|
//
|
|
// Define the size of each range structure
|
|
//
|
|
DType_Range = SizeOf(DMA_RANGE);
|
|
{$EXTERNALSYM DType_Range}
|
|
|
|
//--------------------------------------------------------------
|
|
// Interrupt Resource
|
|
//--------------------------------------------------------------
|
|
|
|
const
|
|
//
|
|
// Define the attribute flags for an interrupt resource range. Each bit flag
|
|
// is identified with a constant bitmask. Following the bitmask definition
|
|
// are the possible values.
|
|
//
|
|
mIRQD_Share = $1; // Bitmask,whether the IRQ may be shared:
|
|
{$EXTERNALSYM mIRQD_Share}
|
|
fIRQD_Exclusive = $0; // The IRQ may not be shared
|
|
{$EXTERNALSYM fIRQD_Exclusive}
|
|
fIRQD_Share = $1; // The IRQ may be shared
|
|
{$EXTERNALSYM fIRQD_Share}
|
|
|
|
fIRQD_Share_Bit = 0; // compatibility
|
|
{$EXTERNALSYM fIRQD_Share_Bit}
|
|
fIRQD_Level_Bit = 1; // compatibility
|
|
{$EXTERNALSYM fIRQD_Level_Bit}
|
|
|
|
//
|
|
// ** NOTE: 16-bit ConfigMgr uses fIRQD_Level_Bit being set to indicate that the
|
|
// ** interrupt is _level-sensitive_. For 32-bit ConfigMgr, if this bit is set,
|
|
// ** then the interrupt is _edge-sensitive_.
|
|
//
|
|
mIRQD_Edge_Level = $2; // Bitmask,whether edge or level triggered:
|
|
{$EXTERNALSYM mIRQD_Edge_Level}
|
|
fIRQD_Level = $0; // The IRQ is level-sensitive
|
|
{$EXTERNALSYM fIRQD_Level}
|
|
fIRQD_Edge = $2; // The IRQ is edge-sensitive
|
|
{$EXTERNALSYM fIRQD_Edge}
|
|
|
|
type
|
|
//
|
|
// IRQ_RANGE
|
|
//
|
|
PIRQ_RANGE = ^IRQ_RANGE;
|
|
{$EXTERNALSYM PIRQ_RANGE}
|
|
IRQ_RANGE = packed record
|
|
IRQR_Min: ULONG; // minimum IRQ in the range
|
|
IRQR_Max: ULONG; // maximum IRQ in the range
|
|
IRQR_Flags: ULONG; // flags describing the range (fIRQD flags)
|
|
end;
|
|
{$EXTERNALSYM IRQ_RANGE}
|
|
|
|
//
|
|
// IRQ_DES structure
|
|
//
|
|
PIRQ_DES_32 = ^IRQ_DES_32;
|
|
{$EXTERNALSYM PIRQ_DES_32}
|
|
IRQ_DES_32 = packed record
|
|
IRQD_Count: DWORD; // number of IRQ_RANGE structs in IRQ_RESOURCE
|
|
IRQD_Type: DWORD; // size (in bytes) of IRQ_RANGE (IRQType_Range)
|
|
IRQD_Flags: DWORD; // flags describing the IRQ (fIRQD flags)
|
|
IRQD_Alloc_Num: ULONG; // specifies the IRQ that was allocated
|
|
IRQD_Affinity: ULONG32;
|
|
end;
|
|
{$EXTERNALSYM IRQ_DES_32}
|
|
|
|
PIRQ_DES_64 = ^IRQ_DES_64;
|
|
{$EXTERNALSYM PIRQ_DES_64}
|
|
IRQ_DES_64 = packed record
|
|
IRQD_Count: DWORD; // number of IRQ_RANGE structs in IRQ_RESOURCE
|
|
IRQD_Type: DWORD; // size (in bytes) of IRQ_RANGE (IRQType_Range)
|
|
IRQD_Flags: DWORD; // flags describing the IRQ (fIRQD flags)
|
|
IRQD_Alloc_Num: ULONG; // specifies the IRQ that was allocated
|
|
IRQD_Affinity: ULONG64;
|
|
end;
|
|
{$EXTERNALSYM IRQ_DES_64}
|
|
|
|
{$IFDEF _WIN64}
|
|
IRQ_DES = IRQ_DES_64;
|
|
PIRQ_DES = PIRQ_DES_64;
|
|
{$ELSE}
|
|
IRQ_DES = IRQ_DES_32;
|
|
PIRQ_DES = PIRQ_DES_32;
|
|
{$ENDIF UNICODE}
|
|
{$EXTERNALSYM IRQ_DES}
|
|
{$EXTERNALSYM PIRQ_DES}
|
|
|
|
//
|
|
// IRQ_RESOURCE structure
|
|
//
|
|
PIRQ_RESOURCE_32 = ^IRQ_RESOURCE_32;
|
|
{$EXTERNALSYM PIRQ_RESOURCE_32}
|
|
IRQ_RESOURCE_32 = packed record
|
|
IRQ_Header: IRQ_DES_32; // info about IRQ range list
|
|
IRQ_Data: array [0..0] of IRQ_RANGE; // list of IRQ ranges
|
|
end;
|
|
{$EXTERNALSYM IRQ_RESOURCE_32}
|
|
|
|
PIRQ_RESOURCE_64 = ^IRQ_RESOURCE_64;
|
|
{$EXTERNALSYM PIRQ_RESOURCE_64}
|
|
IRQ_RESOURCE_64 = packed record
|
|
IRQ_Header: IRQ_DES_64; // info about IRQ range list
|
|
IRQ_Data: array [0..0] of IRQ_RANGE; // list of IRQ ranges
|
|
end;
|
|
{$EXTERNALSYM IRQ_RESOURCE_64}
|
|
|
|
{$IFDEF _WIN64}
|
|
IRQ_RESOURCE = IRQ_RESOURCE_64;
|
|
PIRQ_RESOURCE = PIRQ_RESOURCE_64;
|
|
{$ELSE}
|
|
IRQ_RESOURCE = IRQ_RESOURCE_32;
|
|
PIRQ_RESOURCE = PIRQ_RESOURCE_32;
|
|
{$ENDIF _WIN64}
|
|
{$EXTERNALSYM IRQ_RESOURCE}
|
|
{$EXTERNALSYM PIRQ_RESOURCE}
|
|
|
|
const
|
|
//
|
|
// Define the size of each range structure
|
|
//
|
|
IRQType_Range = SizeOf(IRQ_RANGE);
|
|
{$EXTERNALSYM IRQType_Range}
|
|
|
|
//
|
|
// Flags for resource descriptor APIs indicating the width of certain
|
|
// variable-size resource descriptor structure fields, where applicable.
|
|
//
|
|
CM_RESDES_WIDTH_DEFAULT = $00000000; // 32 or 64-bit IRQ_RESOURCE / IRQ_DES, based on client
|
|
{$EXTERNALSYM CM_RESDES_WIDTH_DEFAULT}
|
|
CM_RESDES_WIDTH_32 = $00000001; // 32-bit IRQ_RESOURCE / IRQ_DES
|
|
{$EXTERNALSYM CM_RESDES_WIDTH_32}
|
|
CM_RESDES_WIDTH_64 = $00000002; // 64-bit IRQ_RESOURCE / IRQ_DES
|
|
{$EXTERNALSYM CM_RESDES_WIDTH_64}
|
|
CM_RESDES_WIDTH_BITS = $00000003;
|
|
{$EXTERNALSYM CM_RESDES_WIDTH_BITS}
|
|
|
|
//--------------------------------------------------------------
|
|
// Device Private Resource
|
|
//--------------------------------------------------------------
|
|
|
|
type
|
|
//
|
|
// DEVICEPRIVATE_RANGE structure
|
|
//
|
|
PDEVPRIVATE_RANGE = ^DEVPRIVATE_RANGE;
|
|
{$EXTERNALSYM PDEVPRIVATE_RANGE}
|
|
DEVPRIVATE_RANGE = packed record
|
|
PR_Data1: DWORD; // mask for base alignment
|
|
PR_Data2: DWORD; // number of bytes
|
|
PR_Data3: DWORD; // minimum address
|
|
end;
|
|
{$EXTERNALSYM DEVPRIVATE_RANGE}
|
|
|
|
//
|
|
// DEVPRIVATE_DES structure
|
|
//
|
|
PDEVPRIVATE_DES = ^DEVPRIVATE_DES;
|
|
{$EXTERNALSYM PDEVPRIVATE_DES}
|
|
DEVPRIVATE_DES = packed record
|
|
PD_Count: DWORD;
|
|
PD_Type: DWORD;
|
|
PD_Data1: DWORD;
|
|
PD_Data2: DWORD;
|
|
PD_Data3: DWORD;
|
|
PD_Flags: DWORD;
|
|
end;
|
|
{$EXTERNALSYM DEVPRIVATE_DES}
|
|
|
|
//
|
|
// DEVPRIVATE_RESOURCE
|
|
//
|
|
PDEVPRIVATE_RESOURCE = ^DEVPRIVATE_RESOURCE;
|
|
{$EXTERNALSYM PDEVPRIVATE_RESOURCE}
|
|
DEVPRIVATE_RESOURCE = packed record
|
|
PRV_Header: DEVPRIVATE_DES;
|
|
PRV_Data: array [0..0] of DEVPRIVATE_RANGE;
|
|
end;
|
|
{$EXTERNALSYM DEVPRIVATE_RESOURCE}
|
|
|
|
const
|
|
//
|
|
// Define the size of each range structure
|
|
//
|
|
PType_Range = SizeOf(DEVPRIVATE_RANGE);
|
|
{$EXTERNALSYM PType_Range}
|
|
|
|
//--------------------------------------------------------------
|
|
// Class-Specific Resource
|
|
//--------------------------------------------------------------
|
|
|
|
type
|
|
PCS_DES = ^CS_DES;
|
|
{$EXTERNALSYM PCS_DES}
|
|
CS_DES = packed record
|
|
CSD_SignatureLength: DWORD;
|
|
CSD_LegacyDataOffset: DWORD;
|
|
CSD_LegacyDataSize: DWORD;
|
|
CSD_Flags: DWORD;
|
|
CSD_ClassGuid: TGUID;
|
|
CSD_Signature: array [0..0] of Byte;
|
|
end;
|
|
{$EXTERNALSYM CS_DES}
|
|
|
|
PCS_RESOURCE = ^CS_RESOURCE;
|
|
{$EXTERNALSYM PCS_RESOURCE}
|
|
CS_RESOURCE = packed record
|
|
CS_Header: CS_DES;
|
|
end;
|
|
{$EXTERNALSYM CS_RESOURCE}
|
|
|
|
//--------------------------------------------------------------
|
|
// PC Card Configuration Resource
|
|
//--------------------------------------------------------------
|
|
|
|
const
|
|
//
|
|
// Define the attribute flags for a PC Card configuration resource descriptor.
|
|
// Each bit flag is identified with a constant bitmask. Following the bitmask
|
|
// definition are the possible values.
|
|
//
|
|
mPCD_IO_8_16 = $1; // Bitmask, whether I/O is 8 or 16 bits
|
|
{$EXTERNALSYM mPCD_IO_8_16}
|
|
fPCD_IO_8 = $0; // I/O is 8-bit
|
|
{$EXTERNALSYM fPCD_IO_8}
|
|
fPCD_IO_16 = $1; // I/O is 16-bit
|
|
{$EXTERNALSYM fPCD_IO_16}
|
|
mPCD_MEM_8_16 = $2; // Bitmask, whether MEM is 8 or 16 bits
|
|
{$EXTERNALSYM mPCD_MEM_8_16}
|
|
fPCD_MEM_8 = $0; // MEM is 8-bit
|
|
{$EXTERNALSYM fPCD_MEM_8}
|
|
fPCD_MEM_16 = $2; // MEM is 16-bit
|
|
{$EXTERNALSYM fPCD_MEM_16}
|
|
mPCD_MEM_A_C = $C; // Bitmask, whether MEMx is Attribute or Common
|
|
{$EXTERNALSYM mPCD_MEM_A_C}
|
|
fPCD_MEM1_A = $4; // MEM1 is Attribute
|
|
{$EXTERNALSYM fPCD_MEM1_A}
|
|
fPCD_MEM2_A = $8; // MEM2 is Attribute
|
|
{$EXTERNALSYM fPCD_MEM2_A}
|
|
fPCD_IO_ZW_8 = $10; // zero wait on 8 bit I/O
|
|
{$EXTERNALSYM fPCD_IO_ZW_8}
|
|
fPCD_IO_SRC_16 = $20; // iosrc 16
|
|
{$EXTERNALSYM fPCD_IO_SRC_16}
|
|
fPCD_IO_WS_16 = $40; // wait states on 16 bit io
|
|
{$EXTERNALSYM fPCD_IO_WS_16}
|
|
mPCD_MEM_WS = $300; // Bitmask, for additional wait states on memory windows
|
|
{$EXTERNALSYM mPCD_MEM_WS}
|
|
fPCD_MEM_WS_ONE = $100; // 1 wait state
|
|
{$EXTERNALSYM fPCD_MEM_WS_ONE}
|
|
fPCD_MEM_WS_TWO = $200; // 2 wait states
|
|
{$EXTERNALSYM fPCD_MEM_WS_TWO}
|
|
fPCD_MEM_WS_THREE = $300; // 3 wait states
|
|
{$EXTERNALSYM fPCD_MEM_WS_THREE}
|
|
|
|
fPCD_MEM_A = $4; // MEM is Attribute
|
|
{$EXTERNALSYM fPCD_MEM_A}
|
|
|
|
fPCD_ATTRIBUTES_PER_WINDOW = $8000;
|
|
{$EXTERNALSYM fPCD_ATTRIBUTES_PER_WINDOW}
|
|
|
|
fPCD_IO1_16 = $00010000; // I/O window 1 is 16-bit
|
|
{$EXTERNALSYM fPCD_IO1_16}
|
|
fPCD_IO1_ZW_8 = $00020000; // I/O window 1 zero wait on 8 bit I/O
|
|
{$EXTERNALSYM fPCD_IO1_ZW_8}
|
|
fPCD_IO1_SRC_16 = $00040000; // I/O window 1 iosrc 16
|
|
{$EXTERNALSYM fPCD_IO1_SRC_16}
|
|
fPCD_IO1_WS_16 = $00080000; // I/O window 1 wait states on 16 bit io
|
|
{$EXTERNALSYM fPCD_IO1_WS_16}
|
|
|
|
fPCD_IO2_16 = $00100000; // I/O window 2 is 16-bit
|
|
{$EXTERNALSYM fPCD_IO2_16}
|
|
fPCD_IO2_ZW_8 = $00200000; // I/O window 2 zero wait on 8 bit I/O
|
|
{$EXTERNALSYM fPCD_IO2_ZW_8}
|
|
fPCD_IO2_SRC_16 = $00400000; // I/O window 2 iosrc 16
|
|
{$EXTERNALSYM fPCD_IO2_SRC_16}
|
|
fPCD_IO2_WS_16 = $00800000; // I/O window 2 wait states on 16 bit io
|
|
{$EXTERNALSYM fPCD_IO2_WS_16}
|
|
|
|
mPCD_MEM1_WS = $03000000; // MEM window 1 Bitmask, for additional wait states on memory windows
|
|
{$EXTERNALSYM mPCD_MEM1_WS}
|
|
fPCD_MEM1_WS_ONE = $01000000; // MEM window 1, 1 wait state
|
|
{$EXTERNALSYM fPCD_MEM1_WS_ONE}
|
|
fPCD_MEM1_WS_TWO = $02000000; // MEM window 1, 2 wait states
|
|
{$EXTERNALSYM fPCD_MEM1_WS_TWO}
|
|
fPCD_MEM1_WS_THREE = $03000000; // MEM window 1, 3 wait states
|
|
{$EXTERNALSYM fPCD_MEM1_WS_THREE}
|
|
fPCD_MEM1_16 = $04000000; // MEM window 1 is 16-bit
|
|
{$EXTERNALSYM fPCD_MEM1_16}
|
|
|
|
mPCD_MEM2_WS = $30000000; // MEM window 2 Bitmask, for additional wait states on memory windows
|
|
{$EXTERNALSYM mPCD_MEM2_WS}
|
|
fPCD_MEM2_WS_ONE = $10000000; // MEM window 2, 1 wait state
|
|
{$EXTERNALSYM fPCD_MEM2_WS_ONE}
|
|
fPCD_MEM2_WS_TWO = $20000000; // MEM window 2, 2 wait states
|
|
{$EXTERNALSYM fPCD_MEM2_WS_TWO}
|
|
fPCD_MEM2_WS_THREE = $30000000; // MEM window 2, 3 wait states
|
|
{$EXTERNALSYM fPCD_MEM2_WS_THREE}
|
|
fPCD_MEM2_16 = $40000000; // MEM window 2 is 16-bit
|
|
{$EXTERNALSYM fPCD_MEM2_16}
|
|
|
|
PCD_MAX_MEMORY = 2;
|
|
{$EXTERNALSYM PCD_MAX_MEMORY}
|
|
PCD_MAX_IO = 2;
|
|
{$EXTERNALSYM PCD_MAX_IO}
|
|
|
|
type
|
|
PPCCARD_DES = ^PCCARD_DES;
|
|
{$EXTERNALSYM PPCCARD_DES}
|
|
PCCARD_DES = packed record
|
|
PCD_Count: DWORD;
|
|
PCD_Type: DWORD;
|
|
PCD_Flags: DWORD;
|
|
PCD_ConfigIndex: Byte;
|
|
PCD_Reserved: array [0..2] of Byte;
|
|
PCD_MemoryCardBase1: DWORD;
|
|
PCD_MemoryCardBase2: DWORD;
|
|
PCD_MemoryCardBase: array [0..PCD_MAX_MEMORY-1] of DWORD; // will soon be removed
|
|
PCD_MemoryFlags: array [0..PCD_MAX_MEMORY-1] of WORD; // will soon be removed
|
|
PCD_IoFlags: array [0..PCD_MAX_IO-1] of Byte; // will soon be removed
|
|
end;
|
|
{$EXTERNALSYM PCCARD_DES}
|
|
|
|
PPCCARD_RESOURCE = ^PCCARD_RESOURCE;
|
|
{$EXTERNALSYM PPCCARD_RESOURCE}
|
|
PCCARD_RESOURCE = packed record
|
|
PcCard_Header: PCCARD_DES;
|
|
end;
|
|
{$EXTERNALSYM PCCARD_RESOURCE}
|
|
|
|
//--------------------------------------------------------------
|
|
// MF (multifunction) PCCard Configuration Resource
|
|
//--------------------------------------------------------------
|
|
|
|
const
|
|
mPMF_AUDIO_ENABLE = $8; // Bitmask, whether audio is enabled or not
|
|
{$EXTERNALSYM mPMF_AUDIO_ENABLE}
|
|
fPMF_AUDIO_ENABLE = $8; // Audio is enabled
|
|
{$EXTERNALSYM fPMF_AUDIO_ENABLE}
|
|
|
|
type
|
|
PMFCARD_DES = ^MFCARD_DES;
|
|
{$EXTERNALSYM PMFCARD_DES}
|
|
MFCARD_DES = packed record
|
|
PMF_Count: DWORD;
|
|
PMF_Type: DWORD;
|
|
PMF_Flags: DWORD;
|
|
PMF_ConfigOptions: Byte;
|
|
PMF_IoResourceIndex: Byte;
|
|
PMF_Reserved: array [0..1] of Byte;
|
|
PMF_ConfigRegisterBase: DWORD;
|
|
end;
|
|
{$EXTERNALSYM MFCARD_DES}
|
|
|
|
PMFCARD_RESOURCE = ^MFCARD_RESOURCE;
|
|
{$EXTERNALSYM PMFCARD_RESOURCE}
|
|
MFCARD_RESOURCE = packed record
|
|
MfCard_Header: MFCARD_DES;
|
|
end;
|
|
{$EXTERNALSYM MFCARD_RESOURCE}
|
|
|
|
//--------------------------------------------------------------
|
|
// Bus Number Resource
|
|
//--------------------------------------------------------------
|
|
|
|
//
|
|
// Define the attribute flags for a Bus Number resource descriptor.
|
|
// Each bit flag is identified with a constant bitmask. Following the bitmask
|
|
// definition are the possible values.
|
|
//
|
|
// Currently unused.
|
|
//
|
|
|
|
//
|
|
// BUSNUMBER_RANGE
|
|
//
|
|
PBUSNUMBER_RANGE = ^BUSNUMBER_RANGE;
|
|
{$EXTERNALSYM PBUSNUMBER_RANGE}
|
|
BUSNUMBER_RANGE = packed record
|
|
BUSR_Min: ULONG; // minimum Bus Number in the range
|
|
BUSR_Max: ULONG; // maximum Bus Number in the range
|
|
BUSR_nBusNumbers: ULONG; // specifies number of buses required
|
|
BUSR_Flags: ULONG; // flags describing the range (currently unused)
|
|
end;
|
|
{$EXTERNALSYM BUSNUMBER_RANGE}
|
|
|
|
//
|
|
// BUSNUMBER_DES structure
|
|
//
|
|
PBUSNUMBER_DES = ^BUSNUMBER_DES;
|
|
{$EXTERNALSYM PBUSNUMBER_DES}
|
|
BUSNUMBER_DES = packed record
|
|
BUSD_Count: DWORD; // number of BUSNUMBER_RANGE structs in BUSNUMBER_RESOURCE
|
|
BUSD_Type: DWORD; // size (in bytes) of BUSNUMBER_RANGE (BusNumberType_Range)
|
|
BUSD_Flags: DWORD; // flags describing the range (currently unused)
|
|
BUSD_Alloc_Base: ULONG; // specifies the first Bus that was allocated
|
|
BUSD_Alloc_End: ULONG; // specifies the last Bus number that was allocated
|
|
end;
|
|
{$EXTERNALSYM BUSNUMBER_DES}
|
|
|
|
//
|
|
// BUSNUMBER_RESOURCE structure
|
|
//
|
|
PBUSNUMBER_RESOURCE = ^BUSNUMBER_RESOURCE;
|
|
{$EXTERNALSYM PBUSNUMBER_RESOURCE}
|
|
BUSNUMBER_RESOURCE = packed record
|
|
BusNumber_Header: BUSNUMBER_DES; // info about Bus Number range list
|
|
BusNumber_Data: array [0..0] of BUSNUMBER_RANGE; // list of Bus Number ranges
|
|
end;
|
|
{$EXTERNALSYM BUSNUMBER_RESOURCE}
|
|
|
|
const
|
|
//
|
|
// Define the size of each range structure
|
|
//
|
|
BusNumberType_Range = SizeOf(BUSNUMBER_RANGE);
|
|
{$EXTERNALSYM BusNumberType_Range}
|
|
|
|
//--------------------------------------------------------------
|
|
// Hardware Profile Information
|
|
//--------------------------------------------------------------
|
|
|
|
const
|
|
//
|
|
// Define flags relating to hardware profiles
|
|
//
|
|
CM_HWPI_NOT_DOCKABLE = $00000000; // machine is not dockable
|
|
{$EXTERNALSYM CM_HWPI_NOT_DOCKABLE}
|
|
CM_HWPI_UNDOCKED = $00000001; // hw profile for docked config
|
|
{$EXTERNALSYM CM_HWPI_UNDOCKED}
|
|
CM_HWPI_DOCKED = $00000002; // hw profile for undocked config
|
|
{$EXTERNALSYM CM_HWPI_DOCKED}
|
|
|
|
type
|
|
//
|
|
// HWPROFILEINFO structure
|
|
//
|
|
PHWPROFILEINFO_A = ^HWPROFILEINFO_A;
|
|
{$EXTERNALSYM PHWPROFILEINFO_A}
|
|
HWPROFILEINFO_A = packed record
|
|
HWPI_ulHWProfile: ULONG; // handle of hw profile
|
|
HWPI_szFriendlyName: array [0..MAX_PROFILE_LEN-1] of Char; // friendly name of hw profile
|
|
HWPI_dwFlags: DWORD; // profile flags (CM_HWPI_*)
|
|
end;
|
|
{$EXTERNALSYM HWPROFILEINFO_A}
|
|
|
|
PHWPROFILEINFO_W = ^HWPROFILEINFO_W;
|
|
{$EXTERNALSYM PHWPROFILEINFO_W}
|
|
HWPROFILEINFO_W = packed record
|
|
HWPI_ulHWProfile: ULONG; // handle of hw profile
|
|
HWPI_szFriendlyName: array [0..MAX_PROFILE_LEN-1] of Char; // friendly name of hw profile
|
|
HWPI_dwFlags: DWORD; // profile flags (CM_HWPI_*)
|
|
end;
|
|
{$EXTERNALSYM HWPROFILEINFO_W}
|
|
|
|
{$IFDEF UNICODE}
|
|
HWPROFILEINFO = HWPROFILEINFO_W;
|
|
PHWPROFILEINFO = PHWPROFILEINFO_W;
|
|
{$ELSE}
|
|
HWPROFILEINFO = HWPROFILEINFO_A;
|
|
PHWPROFILEINFO = PHWPROFILEINFO_A;
|
|
{$ENDIF UNICODE}
|
|
{$EXTERNALSYM HWPROFILEINFO}
|
|
{$EXTERNALSYM PHWPROFILEINFO}
|
|
|
|
//--------------------------------------------------------------
|
|
// Miscellaneous
|
|
//--------------------------------------------------------------
|
|
|
|
const
|
|
//
|
|
// Resource types
|
|
//
|
|
ResType_All = $00000000; // Return all resource types
|
|
{$EXTERNALSYM ResType_All}
|
|
ResType_None = $00000000; // Arbitration always succeeded
|
|
{$EXTERNALSYM ResType_None}
|
|
ResType_Mem = $00000001; // Physical address resource
|
|
{$EXTERNALSYM ResType_Mem}
|
|
ResType_IO = $00000002; // Physical I/O address resource
|
|
{$EXTERNALSYM ResType_IO}
|
|
ResType_DMA = $00000003; // DMA channels resource
|
|
{$EXTERNALSYM ResType_DMA}
|
|
ResType_IRQ = $00000004; // IRQ resource
|
|
{$EXTERNALSYM ResType_IRQ}
|
|
ResType_DoNotUse = $00000005; // Used as spacer to sync subsequent ResTypes w/NT
|
|
{$EXTERNALSYM ResType_DoNotUse}
|
|
ResType_BusNumber = $00000006; // bus number resource
|
|
{$EXTERNALSYM ResType_BusNumber}
|
|
ResType_MAX = $00000006; // Maximum known (arbitrated) ResType
|
|
{$EXTERNALSYM ResType_MAX}
|
|
ResType_Ignored_Bit = $00008000; // Ignore this resource
|
|
{$EXTERNALSYM ResType_Ignored_Bit}
|
|
ResType_ClassSpecific = $0000FFFF; // class-specific resource
|
|
{$EXTERNALSYM ResType_ClassSpecific}
|
|
ResType_Reserved = $00008000; // reserved for internal use
|
|
{$EXTERNALSYM ResType_Reserved}
|
|
ResType_DevicePrivate = $00008001; // device private data
|
|
{$EXTERNALSYM ResType_DevicePrivate}
|
|
ResType_PcCardConfig = $00008002; // PC Card configuration data
|
|
{$EXTERNALSYM ResType_PcCardConfig}
|
|
ResType_MfCardConfig = $00008003; // MF Card configuration data
|
|
{$EXTERNALSYM ResType_MfCardConfig}
|
|
|
|
//
|
|
// Flags specifying options for ranges that conflict with ranges already in
|
|
// the range list (CM_Add_Range)
|
|
//
|
|
CM_ADD_RANGE_ADDIFCONFLICT = $00000000; // merg with conflicting range
|
|
{$EXTERNALSYM CM_ADD_RANGE_ADDIFCONFLICT}
|
|
CM_ADD_RANGE_DONOTADDIFCONFLICT = $00000001; // error if range conflicts
|
|
{$EXTERNALSYM CM_ADD_RANGE_DONOTADDIFCONFLICT}
|
|
CM_ADD_RANGE_BITS = $00000001;
|
|
{$EXTERNALSYM CM_ADD_RANGE_BITS}
|
|
|
|
//
|
|
// Logical Config Flags (specified in call to CM_Get_First_Log_Conf
|
|
//
|
|
BASIC_LOG_CONF = $00000000; // Specifies the req list.
|
|
{$EXTERNALSYM BASIC_LOG_CONF}
|
|
FILTERED_LOG_CONF = $00000001; // Specifies the filtered req list.
|
|
{$EXTERNALSYM FILTERED_LOG_CONF}
|
|
ALLOC_LOG_CONF = $00000002; // Specifies the Alloc Element.
|
|
{$EXTERNALSYM ALLOC_LOG_CONF}
|
|
BOOT_LOG_CONF = $00000003; // Specifies the RM Alloc Element.
|
|
{$EXTERNALSYM BOOT_LOG_CONF}
|
|
FORCED_LOG_CONF = $00000004; // Specifies the Forced Log Conf
|
|
{$EXTERNALSYM FORCED_LOG_CONF}
|
|
OVERRIDE_LOG_CONF = $00000005; // Specifies the Override req list.
|
|
{$EXTERNALSYM OVERRIDE_LOG_CONF}
|
|
NUM_LOG_CONF = $00000006; // Number of Log Conf type
|
|
{$EXTERNALSYM NUM_LOG_CONF}
|
|
LOG_CONF_BITS = $00000007; // The bits of the log conf type.
|
|
{$EXTERNALSYM LOG_CONF_BITS}
|
|
|
|
PRIORITY_EQUAL_FIRST = $00000008; // Same priority, new one first
|
|
{$EXTERNALSYM PRIORITY_EQUAL_FIRST}
|
|
PRIORITY_EQUAL_LAST = $00000000; // Same priority, new one last
|
|
{$EXTERNALSYM PRIORITY_EQUAL_LAST}
|
|
PRIORITY_BIT = $00000008;
|
|
{$EXTERNALSYM PRIORITY_BIT}
|
|
|
|
//
|
|
// Registry disposition values
|
|
// (specified in call to CM_Open_DevNode_Key and CM_Open_Class_Key)
|
|
//
|
|
RegDisposition_OpenAlways = $00000000; // open if exists else create
|
|
{$EXTERNALSYM RegDisposition_OpenAlways}
|
|
RegDisposition_OpenExisting = $00000001; // open key only if exists
|
|
{$EXTERNALSYM RegDisposition_OpenExisting}
|
|
RegDisposition_Bits = $00000001;
|
|
{$EXTERNALSYM RegDisposition_Bits}
|
|
|
|
//
|
|
// ulFlags values for CM API routines
|
|
//
|
|
|
|
//
|
|
// Flags for CM_Add_ID
|
|
//
|
|
CM_ADD_ID_HARDWARE = $00000000;
|
|
{$EXTERNALSYM CM_ADD_ID_HARDWARE}
|
|
CM_ADD_ID_COMPATIBLE = $00000001;
|
|
{$EXTERNALSYM CM_ADD_ID_COMPATIBLE}
|
|
CM_ADD_ID_BITS = $00000001;
|
|
{$EXTERNALSYM CM_ADD_ID_BITS}
|
|
|
|
//
|
|
// Device Node creation flags
|
|
//
|
|
CM_CREATE_DEVNODE_NORMAL = $00000000; // install later
|
|
{$EXTERNALSYM CM_CREATE_DEVNODE_NORMAL}
|
|
CM_CREATE_DEVNODE_NO_WAIT_INSTALL = $00000001; // NOT SUPPORTED ON NT
|
|
{$EXTERNALSYM CM_CREATE_DEVNODE_NO_WAIT_INSTALL}
|
|
CM_CREATE_DEVNODE_PHANTOM = $00000002;
|
|
{$EXTERNALSYM CM_CREATE_DEVNODE_PHANTOM}
|
|
CM_CREATE_DEVNODE_GENERATE_ID = $00000004;
|
|
{$EXTERNALSYM CM_CREATE_DEVNODE_GENERATE_ID}
|
|
CM_CREATE_DEVNODE_DO_NOT_INSTALL = $00000008;
|
|
{$EXTERNALSYM CM_CREATE_DEVNODE_DO_NOT_INSTALL}
|
|
CM_CREATE_DEVNODE_BITS = $0000000F;
|
|
{$EXTERNALSYM CM_CREATE_DEVNODE_BITS}
|
|
|
|
CM_CREATE_DEVINST_NORMAL = CM_CREATE_DEVNODE_NORMAL;
|
|
{$EXTERNALSYM CM_CREATE_DEVINST_NORMAL}
|
|
CM_CREATE_DEVINST_NO_WAIT_INSTALL = CM_CREATE_DEVNODE_NO_WAIT_INSTALL;
|
|
{$EXTERNALSYM CM_CREATE_DEVINST_NO_WAIT_INSTALL}
|
|
CM_CREATE_DEVINST_PHANTOM = CM_CREATE_DEVNODE_PHANTOM;
|
|
{$EXTERNALSYM CM_CREATE_DEVINST_PHANTOM}
|
|
CM_CREATE_DEVINST_GENERATE_ID = CM_CREATE_DEVNODE_GENERATE_ID;
|
|
{$EXTERNALSYM CM_CREATE_DEVINST_GENERATE_ID}
|
|
CM_CREATE_DEVINST_DO_NOT_INSTALL = CM_CREATE_DEVNODE_DO_NOT_INSTALL;
|
|
{$EXTERNALSYM CM_CREATE_DEVINST_DO_NOT_INSTALL}
|
|
CM_CREATE_DEVINST_BITS = CM_CREATE_DEVNODE_BITS;
|
|
{$EXTERNALSYM CM_CREATE_DEVINST_BITS}
|
|
|
|
//
|
|
// Flags for CM_Delete_Class_Key
|
|
//
|
|
CM_DELETE_CLASS_ONLY = $00000000;
|
|
{$EXTERNALSYM CM_DELETE_CLASS_ONLY}
|
|
CM_DELETE_CLASS_SUBKEYS = $00000001;
|
|
{$EXTERNALSYM CM_DELETE_CLASS_SUBKEYS}
|
|
CM_DELETE_CLASS_BITS = $00000001;
|
|
{$EXTERNALSYM CM_DELETE_CLASS_BITS}
|
|
|
|
//
|
|
// Detection reason flags (specified in call to CM_Run_Detection)
|
|
//
|
|
CM_DETECT_NEW_PROFILE = $00000001; // detection for new hw profile
|
|
{$EXTERNALSYM CM_DETECT_NEW_PROFILE}
|
|
CM_DETECT_CRASHED = $00000002; // Previous detection crashed
|
|
{$EXTERNALSYM CM_DETECT_CRASHED}
|
|
CM_DETECT_HWPROF_FIRST_BOOT = $00000004;
|
|
{$EXTERNALSYM CM_DETECT_HWPROF_FIRST_BOOT}
|
|
CM_DETECT_RUN = $80000000;
|
|
{$EXTERNALSYM CM_DETECT_RUN}
|
|
CM_DETECT_BITS = $80000007;
|
|
{$EXTERNALSYM CM_DETECT_BITS}
|
|
|
|
CM_DISABLE_POLITE = $00000000; // Ask the driver
|
|
{$EXTERNALSYM CM_DISABLE_POLITE}
|
|
CM_DISABLE_ABSOLUTE = $00000001; // Don't ask the driver
|
|
{$EXTERNALSYM CM_DISABLE_ABSOLUTE}
|
|
CM_DISABLE_HARDWARE = $00000002; // Don't ask the driver, and won't be restarteable
|
|
{$EXTERNALSYM CM_DISABLE_HARDWARE}
|
|
CM_DISABLE_UI_NOT_OK = $00000004; // Don't popup any veto API
|
|
{$EXTERNALSYM CM_DISABLE_UI_NOT_OK}
|
|
CM_DISABLE_BITS = $00000007; // The bits for the disable function
|
|
{$EXTERNALSYM CM_DISABLE_BITS}
|
|
|
|
//
|
|
// Flags for CM_Get_Device_ID_List, CM_Get_Device_ID_List_Size
|
|
//
|
|
CM_GETIDLIST_FILTER_NONE = $00000000;
|
|
{$EXTERNALSYM CM_GETIDLIST_FILTER_NONE}
|
|
CM_GETIDLIST_FILTER_ENUMERATOR = $00000001;
|
|
{$EXTERNALSYM CM_GETIDLIST_FILTER_ENUMERATOR}
|
|
CM_GETIDLIST_FILTER_SERVICE = $00000002;
|
|
{$EXTERNALSYM CM_GETIDLIST_FILTER_SERVICE}
|
|
CM_GETIDLIST_FILTER_EJECTRELATIONS = $00000004;
|
|
{$EXTERNALSYM CM_GETIDLIST_FILTER_EJECTRELATIONS}
|
|
CM_GETIDLIST_FILTER_REMOVALRELATIONS = $00000008;
|
|
{$EXTERNALSYM CM_GETIDLIST_FILTER_REMOVALRELATIONS}
|
|
CM_GETIDLIST_FILTER_POWERRELATIONS = $00000010;
|
|
{$EXTERNALSYM CM_GETIDLIST_FILTER_POWERRELATIONS}
|
|
CM_GETIDLIST_FILTER_BUSRELATIONS = $00000020;
|
|
{$EXTERNALSYM CM_GETIDLIST_FILTER_BUSRELATIONS}
|
|
CM_GETIDLIST_DONOTGENERATE = $10000040;
|
|
{$EXTERNALSYM CM_GETIDLIST_DONOTGENERATE}
|
|
CM_GETIDLIST_FILTER_BITS = $1000007F;
|
|
{$EXTERNALSYM CM_GETIDLIST_FILTER_BITS}
|
|
|
|
//
|
|
// Flags for CM_Get_Device_Interface_List, CM_Get_Device_Interface_List_Size
|
|
//
|
|
CM_GET_DEVICE_INTERFACE_LIST_PRESENT = $00000000; // only currently 'live' device interfaces
|
|
{$EXTERNALSYM CM_GET_DEVICE_INTERFACE_LIST_PRESENT}
|
|
CM_GET_DEVICE_INTERFACE_LIST_ALL_DEVICES = $00000001; // all registered device interfaces, live or not
|
|
{$EXTERNALSYM CM_GET_DEVICE_INTERFACE_LIST_ALL_DEVICES}
|
|
CM_GET_DEVICE_INTERFACE_LIST_BITS = $00000001;
|
|
{$EXTERNALSYM CM_GET_DEVICE_INTERFACE_LIST_BITS}
|
|
|
|
//
|
|
// Registry properties (specified in call to CM_Get_DevInst_Registry_Property or CM_Get_Class_Registry_Property,
|
|
// some are allowed in calls to CM_Set_DevInst_Registry_Property and CM_Set_Class_Registry_Property)
|
|
// CM_DRP_xxxx values should be used for CM_Get_DevInst_Registry_Property / CM_Set_DevInst_Registry_Property
|
|
// CM_CRP_xxxx values should be used for CM_Get_Class_Registry_Property / CM_Set_Class_Registry_Property
|
|
// DRP/CRP values that overlap must have a 1:1 correspondence with each other
|
|
//
|
|
CM_DRP_DEVICEDESC = $00000001; // DeviceDesc REG_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_DEVICEDESC}
|
|
CM_DRP_HARDWAREID = $00000002; // HardwareID REG_MULTI_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_HARDWAREID}
|
|
CM_DRP_COMPATIBLEIDS = $00000003; // CompatibleIDs REG_MULTI_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_COMPATIBLEIDS}
|
|
CM_DRP_UNUSED0 = $00000004; // unused
|
|
{$EXTERNALSYM CM_DRP_UNUSED0}
|
|
CM_DRP_SERVICE = $00000005; // Service REG_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_SERVICE}
|
|
CM_DRP_UNUSED1 = $00000006; // unused
|
|
{$EXTERNALSYM CM_DRP_UNUSED1}
|
|
CM_DRP_UNUSED2 = $00000007; // unused
|
|
{$EXTERNALSYM CM_DRP_UNUSED2}
|
|
CM_DRP_CLASS = $00000008; // Class REG_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_CLASS}
|
|
CM_DRP_CLASSGUID = $00000009; // ClassGUID REG_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_CLASSGUID}
|
|
CM_DRP_DRIVER = $0000000A; // Driver REG_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_DRIVER}
|
|
CM_DRP_CONFIGFLAGS = $0000000B; // ConfigFlags REG_DWORD property (RW)
|
|
{$EXTERNALSYM CM_DRP_CONFIGFLAGS}
|
|
CM_DRP_MFG = $0000000C; // Mfg REG_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_MFG}
|
|
CM_DRP_FRIENDLYNAME = $0000000D; // FriendlyName REG_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_FRIENDLYNAME}
|
|
CM_DRP_LOCATION_INFORMATION = $0000000E; // LocationInformation REG_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_LOCATION_INFORMATION}
|
|
CM_DRP_PHYSICAL_DEVICE_OBJECT_NAME = $0000000F; // PhysicalDeviceObjectName REG_SZ property (R)
|
|
{$EXTERNALSYM CM_DRP_PHYSICAL_DEVICE_OBJECT_NAME}
|
|
CM_DRP_CAPABILITIES = $00000010; // Capabilities REG_DWORD property (R)
|
|
{$EXTERNALSYM CM_DRP_CAPABILITIES}
|
|
CM_DRP_UI_NUMBER = $00000011; // UiNumber REG_DWORD property (R)
|
|
{$EXTERNALSYM CM_DRP_UI_NUMBER}
|
|
CM_DRP_UPPERFILTERS = $00000012; // UpperFilters REG_MULTI_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_UPPERFILTERS}
|
|
CM_DRP_LOWERFILTERS = $00000013; // LowerFilters REG_MULTI_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_LOWERFILTERS}
|
|
CM_DRP_BUSTYPEGUID = $00000014; // Bus Type Guid, GUID, (R)
|
|
{$EXTERNALSYM CM_DRP_BUSTYPEGUID}
|
|
CM_DRP_LEGACYBUSTYPE = $00000015; // Legacy bus type, INTERFACE_TYPE, (R)
|
|
{$EXTERNALSYM CM_DRP_LEGACYBUSTYPE}
|
|
CM_DRP_BUSNUMBER = $00000016; // Bus Number, DWORD, (R)
|
|
{$EXTERNALSYM CM_DRP_BUSNUMBER}
|
|
CM_DRP_ENUMERATOR_NAME = $00000017; // Enumerator Name REG_SZ property (R)
|
|
{$EXTERNALSYM CM_DRP_ENUMERATOR_NAME}
|
|
CM_DRP_SECURITY = $00000018; // Security - Device override (RW)
|
|
{$EXTERNALSYM CM_DRP_SECURITY}
|
|
CM_CRP_SECURITY = CM_DRP_SECURITY; // Class default security (RW)
|
|
{$EXTERNALSYM CM_CRP_SECURITY}
|
|
CM_DRP_SECURITY_SDS = $00000019; // Security - Device override (RW)
|
|
{$EXTERNALSYM CM_DRP_SECURITY_SDS}
|
|
CM_CRP_SECURITY_SDS = CM_DRP_SECURITY_SDS; // Class default security (RW)
|
|
{$EXTERNALSYM CM_CRP_SECURITY_SDS}
|
|
CM_DRP_DEVTYPE = $0000001A; // Device Type - Device override (RW)
|
|
{$EXTERNALSYM CM_DRP_DEVTYPE}
|
|
CM_CRP_DEVTYPE = CM_DRP_DEVTYPE; // Class default Device-type (RW)
|
|
{$EXTERNALSYM CM_CRP_DEVTYPE}
|
|
CM_DRP_EXCLUSIVE = $0000001B; // Exclusivity - Device override (RW)
|
|
{$EXTERNALSYM CM_DRP_EXCLUSIVE}
|
|
CM_CRP_EXCLUSIVE = CM_DRP_EXCLUSIVE; // Class default (RW)
|
|
{$EXTERNALSYM CM_CRP_EXCLUSIVE}
|
|
CM_DRP_CHARACTERISTICS = $0000001C; // Characteristics - Device Override (RW)
|
|
{$EXTERNALSYM CM_DRP_CHARACTERISTICS}
|
|
CM_CRP_CHARACTERISTICS = CM_DRP_CHARACTERISTICS; // Class default (RW)
|
|
{$EXTERNALSYM CM_CRP_CHARACTERISTICS}
|
|
CM_DRP_ADDRESS = $0000001D; // Device Address (R)
|
|
{$EXTERNALSYM CM_DRP_ADDRESS}
|
|
CM_DRP_UI_NUMBER_DESC_FORMAT = $0000001E; // UINumberDescFormat REG_SZ property (RW)
|
|
{$EXTERNALSYM CM_DRP_UI_NUMBER_DESC_FORMAT}
|
|
CM_DRP_DEVICE_POWER_DATA = $0000001F; // CM_POWER_DATA REG_BINARY property (R)
|
|
{$EXTERNALSYM CM_DRP_DEVICE_POWER_DATA}
|
|
CM_DRP_REMOVAL_POLICY = $00000020; // CM_DEVICE_REMOVAL_POLICY REG_DWORD (R)
|
|
{$EXTERNALSYM CM_DRP_REMOVAL_POLICY}
|
|
CM_DRP_REMOVAL_POLICY_HW_DEFAULT = $00000021; // CM_DRP_REMOVAL_POLICY_HW_DEFAULT REG_DWORD (R)
|
|
{$EXTERNALSYM CM_DRP_REMOVAL_POLICY_HW_DEFAULT}
|
|
CM_DRP_REMOVAL_POLICY_OVERRIDE = $00000022; // CM_DRP_REMOVAL_POLICY_OVERRIDE REG_DWORD (RW)
|
|
{$EXTERNALSYM CM_DRP_REMOVAL_POLICY_OVERRIDE}
|
|
CM_DRP_INSTALL_STATE = $00000023; // CM_DRP_INSTALL_STATE REG_DWORD (R)
|
|
{$EXTERNALSYM CM_DRP_INSTALL_STATE}
|
|
|
|
CM_DRP_MIN = $00000001; // First device register
|
|
{$EXTERNALSYM CM_DRP_MIN}
|
|
CM_CRP_MIN = CM_DRP_MIN; // First class register
|
|
{$EXTERNALSYM CM_CRP_MIN}
|
|
CM_DRP_MAX = $00000023; // Last device register
|
|
{$EXTERNALSYM CM_DRP_MAX}
|
|
CM_CRP_MAX = CM_DRP_MAX; // Last class register
|
|
{$EXTERNALSYM CM_CRP_MAX}
|
|
|
|
//
|
|
// Capabilities bits (the capability value is returned from calling
|
|
// CM_Get_DevInst_Registry_Property with CM_DRP_CAPABILITIES property)
|
|
//
|
|
CM_DEVCAP_LOCKSUPPORTED = $00000001;
|
|
{$EXTERNALSYM CM_DEVCAP_LOCKSUPPORTED}
|
|
CM_DEVCAP_EJECTSUPPORTED = $00000002;
|
|
{$EXTERNALSYM CM_DEVCAP_EJECTSUPPORTED}
|
|
CM_DEVCAP_REMOVABLE = $00000004;
|
|
{$EXTERNALSYM CM_DEVCAP_REMOVABLE}
|
|
CM_DEVCAP_DOCKDEVICE = $00000008;
|
|
{$EXTERNALSYM CM_DEVCAP_DOCKDEVICE}
|
|
CM_DEVCAP_UNIQUEID = $00000010;
|
|
{$EXTERNALSYM CM_DEVCAP_UNIQUEID}
|
|
CM_DEVCAP_SILENTINSTALL = $00000020;
|
|
{$EXTERNALSYM CM_DEVCAP_SILENTINSTALL}
|
|
CM_DEVCAP_RAWDEVICEOK = $00000040;
|
|
{$EXTERNALSYM CM_DEVCAP_RAWDEVICEOK}
|
|
CM_DEVCAP_SURPRISEREMOVALOK = $00000080;
|
|
{$EXTERNALSYM CM_DEVCAP_SURPRISEREMOVALOK}
|
|
CM_DEVCAP_HARDWAREDISABLED = $00000100;
|
|
{$EXTERNALSYM CM_DEVCAP_HARDWAREDISABLED}
|
|
CM_DEVCAP_NONDYNAMIC = $00000200;
|
|
{$EXTERNALSYM CM_DEVCAP_NONDYNAMIC}
|
|
|
|
//
|
|
// Removal policies (retrievable via CM_Get_DevInst_Registry_Property with
|
|
// the CM_DRP_REMOVAL_POLICY, CM_DRP_REMOVAL_POLICY_OVERRIDE, or
|
|
// CM_DRP_REMOVAL_POLICY_HW_DEFAULT properties)
|
|
//
|
|
CM_REMOVAL_POLICY_EXPECT_NO_REMOVAL = 1;
|
|
{$EXTERNALSYM CM_REMOVAL_POLICY_EXPECT_NO_REMOVAL}
|
|
CM_REMOVAL_POLICY_EXPECT_ORDERLY_REMOVAL = 2;
|
|
{$EXTERNALSYM CM_REMOVAL_POLICY_EXPECT_ORDERLY_REMOVAL}
|
|
CM_REMOVAL_POLICY_EXPECT_SURPRISE_REMOVAL = 3;
|
|
{$EXTERNALSYM CM_REMOVAL_POLICY_EXPECT_SURPRISE_REMOVAL}
|
|
|
|
//
|
|
// Device install states (retrievable via CM_Get_DevInst_Registry_Property with
|
|
// the CM_DRP_INSTALL_STATE properties)
|
|
//
|
|
CM_INSTALL_STATE_INSTALLED = 0;
|
|
{$EXTERNALSYM CM_INSTALL_STATE_INSTALLED}
|
|
CM_INSTALL_STATE_NEEDS_REINSTALL = 1;
|
|
{$EXTERNALSYM CM_INSTALL_STATE_NEEDS_REINSTALL}
|
|
CM_INSTALL_STATE_FAILED_INSTALL = 2;
|
|
{$EXTERNALSYM CM_INSTALL_STATE_FAILED_INSTALL}
|
|
CM_INSTALL_STATE_FINISH_INSTALL = 3;
|
|
{$EXTERNALSYM CM_INSTALL_STATE_FINISH_INSTALL}
|
|
|
|
//
|
|
// Flags for CM_Locate_DevNode
|
|
//
|
|
CM_LOCATE_DEVNODE_NORMAL = $00000000;
|
|
{$EXTERNALSYM CM_LOCATE_DEVNODE_NORMAL}
|
|
CM_LOCATE_DEVNODE_PHANTOM = $00000001;
|
|
{$EXTERNALSYM CM_LOCATE_DEVNODE_PHANTOM}
|
|
CM_LOCATE_DEVNODE_CANCELREMOVE = $00000002;
|
|
{$EXTERNALSYM CM_LOCATE_DEVNODE_CANCELREMOVE}
|
|
CM_LOCATE_DEVNODE_NOVALIDATION = $00000004;
|
|
{$EXTERNALSYM CM_LOCATE_DEVNODE_NOVALIDATION}
|
|
CM_LOCATE_DEVNODE_BITS = $00000007;
|
|
{$EXTERNALSYM CM_LOCATE_DEVNODE_BITS}
|
|
|
|
CM_LOCATE_DEVINST_NORMAL = CM_LOCATE_DEVNODE_NORMAL;
|
|
{$EXTERNALSYM CM_LOCATE_DEVINST_NORMAL}
|
|
CM_LOCATE_DEVINST_PHANTOM = CM_LOCATE_DEVNODE_PHANTOM;
|
|
{$EXTERNALSYM CM_LOCATE_DEVINST_PHANTOM}
|
|
CM_LOCATE_DEVINST_CANCELREMOVE = CM_LOCATE_DEVNODE_CANCELREMOVE;
|
|
{$EXTERNALSYM CM_LOCATE_DEVINST_CANCELREMOVE}
|
|
CM_LOCATE_DEVINST_NOVALIDATION = CM_LOCATE_DEVNODE_NOVALIDATION;
|
|
{$EXTERNALSYM CM_LOCATE_DEVINST_NOVALIDATION}
|
|
CM_LOCATE_DEVINST_BITS = CM_LOCATE_DEVNODE_BITS;
|
|
{$EXTERNALSYM CM_LOCATE_DEVINST_BITS}
|
|
|
|
//
|
|
// Flags for CM_Open_Class_Key
|
|
//
|
|
CM_OPEN_CLASS_KEY_INSTALLER = $00000000;
|
|
{$EXTERNALSYM CM_OPEN_CLASS_KEY_INSTALLER}
|
|
CM_OPEN_CLASS_KEY_INTERFACE = $00000001;
|
|
{$EXTERNALSYM CM_OPEN_CLASS_KEY_INTERFACE}
|
|
CM_OPEN_CLASS_KEY_BITS = $00000001;
|
|
{$EXTERNALSYM CM_OPEN_CLASS_KEY_BITS}
|
|
|
|
//
|
|
// Flags for CM_Query_And_Remove_SubTree
|
|
//
|
|
CM_REMOVE_UI_OK = $00000000;
|
|
{$EXTERNALSYM CM_REMOVE_UI_OK}
|
|
CM_REMOVE_UI_NOT_OK = $00000001;
|
|
{$EXTERNALSYM CM_REMOVE_UI_NOT_OK}
|
|
CM_REMOVE_NO_RESTART = $00000002;
|
|
{$EXTERNALSYM CM_REMOVE_NO_RESTART}
|
|
CM_REMOVE_BITS = $00000003;
|
|
{$EXTERNALSYM CM_REMOVE_BITS}
|
|
|
|
//
|
|
// Backward compatibility--do not use
|
|
// (use above CM_REMOVE_* flags instead)
|
|
//
|
|
CM_QUERY_REMOVE_UI_OK = CM_REMOVE_UI_OK;
|
|
{$EXTERNALSYM CM_QUERY_REMOVE_UI_OK}
|
|
CM_QUERY_REMOVE_UI_NOT_OK = CM_REMOVE_UI_NOT_OK;
|
|
{$EXTERNALSYM CM_QUERY_REMOVE_UI_NOT_OK}
|
|
CM_QUERY_REMOVE_BITS = CM_QUERY_REMOVE_UI_OK or CM_QUERY_REMOVE_UI_NOT_OK;
|
|
{$EXTERNALSYM CM_QUERY_REMOVE_BITS}
|
|
|
|
//
|
|
// Flags for CM_Reenumerate_DevNode
|
|
//
|
|
CM_REENUMERATE_NORMAL = $00000000;
|
|
{$EXTERNALSYM CM_REENUMERATE_NORMAL}
|
|
CM_REENUMERATE_SYNCHRONOUS = $00000001;
|
|
{$EXTERNALSYM CM_REENUMERATE_SYNCHRONOUS}
|
|
CM_REENUMERATE_RETRY_INSTALLATION = $00000002;
|
|
{$EXTERNALSYM CM_REENUMERATE_RETRY_INSTALLATION}
|
|
CM_REENUMERATE_ASYNCHRONOUS = $00000004;
|
|
{$EXTERNALSYM CM_REENUMERATE_ASYNCHRONOUS}
|
|
CM_REENUMERATE_BITS = $00000007;
|
|
{$EXTERNALSYM CM_REENUMERATE_BITS}
|
|
|
|
//
|
|
// Flags for CM_Register_Device_Driver
|
|
//
|
|
CM_REGISTER_DEVICE_DRIVER_STATIC = $00000000;
|
|
{$EXTERNALSYM CM_REGISTER_DEVICE_DRIVER_STATIC}
|
|
CM_REGISTER_DEVICE_DRIVER_DISABLEABLE = $00000001;
|
|
{$EXTERNALSYM CM_REGISTER_DEVICE_DRIVER_DISABLEABLE}
|
|
CM_REGISTER_DEVICE_DRIVER_REMOVABLE = $00000002;
|
|
{$EXTERNALSYM CM_REGISTER_DEVICE_DRIVER_REMOVABLE}
|
|
CM_REGISTER_DEVICE_DRIVER_BITS = $00000003;
|
|
{$EXTERNALSYM CM_REGISTER_DEVICE_DRIVER_BITS}
|
|
|
|
//
|
|
// Registry Branch Locations (for CM_Open_DevNode_Key)
|
|
//
|
|
CM_REGISTRY_HARDWARE = $00000000;
|
|
{$EXTERNALSYM CM_REGISTRY_HARDWARE}
|
|
CM_REGISTRY_SOFTWARE = $00000001;
|
|
{$EXTERNALSYM CM_REGISTRY_SOFTWARE}
|
|
CM_REGISTRY_USER = $00000100;
|
|
{$EXTERNALSYM CM_REGISTRY_USER}
|
|
CM_REGISTRY_CONFIG = $00000200;
|
|
{$EXTERNALSYM CM_REGISTRY_CONFIG}
|
|
CM_REGISTRY_BITS = $00000301;
|
|
{$EXTERNALSYM CM_REGISTRY_BITS}
|
|
|
|
//
|
|
// Flags for CM_Set_DevNode_Problem
|
|
//
|
|
CM_SET_DEVNODE_PROBLEM_NORMAL = $00000000; // only set problem if currently no problem
|
|
{$EXTERNALSYM CM_SET_DEVNODE_PROBLEM_NORMAL}
|
|
CM_SET_DEVNODE_PROBLEM_OVERRIDE = $00000001; // override current problem with new problem
|
|
{$EXTERNALSYM CM_SET_DEVNODE_PROBLEM_OVERRIDE}
|
|
CM_SET_DEVNODE_PROBLEM_BITS = $00000001;
|
|
{$EXTERNALSYM CM_SET_DEVNODE_PROBLEM_BITS}
|
|
|
|
CM_SET_DEVINST_PROBLEM_NORMAL = CM_SET_DEVNODE_PROBLEM_NORMAL;
|
|
{$EXTERNALSYM CM_SET_DEVINST_PROBLEM_NORMAL}
|
|
CM_SET_DEVINST_PROBLEM_OVERRIDE = CM_SET_DEVNODE_PROBLEM_OVERRIDE;
|
|
{$EXTERNALSYM CM_SET_DEVINST_PROBLEM_OVERRIDE}
|
|
CM_SET_DEVINST_PROBLEM_BITS = CM_SET_DEVNODE_PROBLEM_BITS;
|
|
{$EXTERNALSYM CM_SET_DEVINST_PROBLEM_BITS}
|
|
|
|
//
|
|
// Flags for CM_Set_HW_Prof_Flags
|
|
//
|
|
CM_SET_HW_PROF_FLAGS_UI_NOT_OK = $00000001; // Don't popup any veto UI
|
|
{$EXTERNALSYM CM_SET_HW_PROF_FLAGS_UI_NOT_OK}
|
|
CM_SET_HW_PROF_FLAGS_BITS = $00000001;
|
|
{$EXTERNALSYM CM_SET_HW_PROF_FLAGS_BITS}
|
|
|
|
//
|
|
// Re-enable and configuration actions (specified in call to CM_Setup_DevInst)
|
|
//
|
|
CM_SETUP_DEVNODE_READY = $00000000; // Reenable problem devinst
|
|
{$EXTERNALSYM CM_SETUP_DEVNODE_READY}
|
|
CM_SETUP_DEVINST_READY = CM_SETUP_DEVNODE_READY;
|
|
{$EXTERNALSYM CM_SETUP_DEVINST_READY}
|
|
CM_SETUP_DOWNLOAD = $00000001; // Get info about devinst
|
|
{$EXTERNALSYM CM_SETUP_DOWNLOAD}
|
|
CM_SETUP_WRITE_LOG_CONFS = $00000002;
|
|
{$EXTERNALSYM CM_SETUP_WRITE_LOG_CONFS}
|
|
CM_SETUP_PROP_CHANGE = $00000003;
|
|
{$EXTERNALSYM CM_SETUP_PROP_CHANGE}
|
|
CM_SETUP_DEVNODE_RESET = $00000004; // Reset problem devinst without starting
|
|
{$EXTERNALSYM CM_SETUP_DEVNODE_RESET}
|
|
CM_SETUP_DEVINST_RESET = CM_SETUP_DEVNODE_RESET;
|
|
{$EXTERNALSYM CM_SETUP_DEVINST_RESET}
|
|
CM_SETUP_BITS = $00000007;
|
|
{$EXTERNALSYM CM_SETUP_BITS}
|
|
|
|
//
|
|
// Flags for CM_Query_Arbitrator_Free_Data and
|
|
// CM_Query_Arbitrator_Free_Data_Size.
|
|
//
|
|
CM_QUERY_ARBITRATOR_RAW = $00000000;
|
|
{$EXTERNALSYM CM_QUERY_ARBITRATOR_RAW}
|
|
CM_QUERY_ARBITRATOR_TRANSLATED = $00000001;
|
|
{$EXTERNALSYM CM_QUERY_ARBITRATOR_TRANSLATED}
|
|
CM_QUERY_ARBITRATOR_BITS = $00000001;
|
|
{$EXTERNALSYM CM_QUERY_ARBITRATOR_BITS}
|
|
|
|
//
|
|
// Flags for CM_Get_DevNode_Custom_Property
|
|
//
|
|
CM_CUSTOMDEVPROP_MERGE_MULTISZ = $00000001;
|
|
{$EXTERNALSYM CM_CUSTOMDEVPROP_MERGE_MULTISZ}
|
|
CM_CUSTOMDEVPROP_BITS = $00000001;
|
|
{$EXTERNALSYM CM_CUSTOMDEVPROP_BITS}
|
|
|
|
//--------------------------------------------------------------
|
|
// Function prototypes
|
|
//--------------------------------------------------------------
|
|
|
|
{$IFNDEF CFGMGR32_LINKONREQUEST}
|
|
|
|
function CM_Add_Empty_Log_Conf(var lcLogConf: LOG_CONF;
|
|
dnDevInst: DEVINST; Priority: PRIORITY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Add_Empty_Log_Conf_Ex(var lcLogConf: LOG_CONF;
|
|
dnDevInst: DEVINST; Priority: PRIORITY; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Add_IDA(dnDevInst: DEVINST; pszID: PAnsiChar;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Add_IDW(dnDevInst: DEVINST; pszID: PWideChar;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Add_ID(dnDevInst: DEVINST; pszID: PTSTR;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Add_ID_ExA(dnDevInst: DEVINST; pszID: PAnsiChar;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Add_ID_ExW(dnDevInst: DEVINST; pszID: PWideChar;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Add_ID_Ex(dnDevInst: DEVINST; pszID: PTSTR;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Add_Range(ullStartValue: DWORDLONG;
|
|
ullEndValue: DWORDLONG; rlh: RANGE_LIST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Add_Res_Des(var rdResDes: RES_DES; lcLogConf: LOG_CONF;
|
|
ResourceID: RESOURCEID; ResourceData: Pointer; ResourceLen: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Add_Res_Des_Ex(var rdResDes: RES_DES;
|
|
lcLogConf: LOG_CONF; ResourceID: RESOURCEID; ResourceData: Pointer;
|
|
ResourceLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Connect_MachineA(const UNCServerName: PAnsiChar;
|
|
var hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Connect_MachineW(const UNCServerName: PWideChar;
|
|
var hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Connect_Machine(const UNCServerName: PTSTR;
|
|
var hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Create_DevNodeA(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_A;
|
|
dnParent: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Create_DevNodeW(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_W;
|
|
dnParent: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Create_DevNode(var dnDevInst: DEVINST; pDeviceID: DEVINSTID;
|
|
dnParent: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Create_DevNode_ExA(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_A;
|
|
dnParent: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Create_DevNode_ExW(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_W;
|
|
dnParent: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Create_DevNode_Ex(var dnDevInst: DEVINST; pDeviceID: DEVINSTID;
|
|
dnParent: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Create_DevInstA(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_A;
|
|
dnParent: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Create_DevInstW(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_W;
|
|
dnParent: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Create_DevInst(var dnDevInst: DEVINST; pDeviceID: DEVINSTID;
|
|
dnParent: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Create_DevInst_ExA(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_A;
|
|
dnParent: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Create_DevInst_ExW(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_W;
|
|
dnParent: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Create_DevInst_Ex(var dnDevInst: DEVINST; pDeviceID: DEVINSTID;
|
|
dnParent: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Create_Range_List(var rlh: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Delete_Class_Key(ClassGuid: PGUID; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Delete_Class_Key_Ex(ClassGuid: PGUID; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Delete_DevNode_Key(dnDevNode: DEVNODE;
|
|
ulHardwareProfile: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Delete_DevNode_Key_Ex(dnDevNode: DEVNODE;
|
|
ulHardwareProfile: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Delete_DevInst_Key(dnDevNode: DEVINST;
|
|
ulHardwareProfile: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Delete_DevInst_Key_Ex(dnDevNode: DEVINST; ulHardwareProfile: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Delete_Range(ullStartValue: DWORDLONG; ullEndValue: DWORDLONG;
|
|
rlh: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Detect_Resource_Conflict(dnDevInst: DEVINST;
|
|
ResourceID: RESOURCEID; ResourceData: Pointer; ResourceLen: ULONG;
|
|
var bConflictDetected: BOOL; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Detect_Resource_Conflict_Ex(dnDevInst: DEVINST;
|
|
ResourceID: RESOURCEID; ResourceData: Pointer; ResourceLen: ULONG;
|
|
var bConflictDetected: BOOL; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Disable_DevNode(dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Disable_DevNode_Ex(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Disable_DevInst(dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Disable_DevInst_Ex(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Disconnect_Machine(hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Dup_Range_List(rlhOld: RANGE_LIST; rlhNew: RANGE_LIST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Enable_DevNode(dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Enable_DevNode_Ex(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Enable_DevInst(dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Enable_DevInst_Ex(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Enumerate_Classes(ulClassIndex: ULONG;
|
|
var ClassGuid: TGUID; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Enumerate_Classes_Ex(ulClassIndex: ULONG; var ClassGuid: TGUID;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Enumerate_EnumeratorsA(ulEnumIndex: ULONG; Buffer: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Enumerate_EnumeratorsW(ulEnumIndex: ULONG; Buffer: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Enumerate_Enumerators(ulEnumIndex: ULONG; Buffer: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Enumerate_Enumerators_ExA(ulEnumIndex: ULONG; Buffer: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Enumerate_Enumerators_ExW(ulEnumIndex: ULONG; Buffer: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Enumerate_Enumerators_Ex(ulEnumIndex: ULONG; Buffer: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Find_Range(var pullStart: DWORDLONG; ullStart: DWORDLONG;
|
|
ulLength: ULONG; ullAlignment: DWORDLONG; ullEnd: DWORDLONG;
|
|
rlh: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_First_Range(rlh: RANGE_LIST; var ullStart: DWORDLONG;
|
|
var ullEnd: DWORDLONG; preElement: PRANGE_ELEMENT;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Free_Log_Conf(lcLogConfToBeFreed: LOG_CONF;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Free_Log_Conf_Ex(lcLogConfToBeFreed: LOG_CONF;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Free_Log_Conf_Handle(lcLogConf: LOG_CONF): CONFIGRET; stdcall;
|
|
|
|
function CM_Free_Range_List(rlh: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Free_Res_Des(prdResDes: PRES_DES;
|
|
rdResDes: RES_DES; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Free_Res_Des_Ex(prdResDes: PRES_DES; rdResDes: RES_DES;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Free_Res_Des_Handle(rdResDes: RES_DES): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Child(var dnDevInstChild: DEVINST;
|
|
dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Child_Ex(var dnDevInstChild: DEVINST; dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Class_NameA(ClassGuid: PGUID; Buffer: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Class_NameW(ClassGuid: PGUID; Buffer: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Class_Name(ClassGuid: PGUID; Buffer: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Class_Name_ExA(ClassGuid: PGUID; Buffer: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Class_Name_ExW(ClassGuid: PGUID; Buffer: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Class_Name_Ex(ClassGuid: PGUID; Buffer: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Class_Key_NameA(ClassGuid: PGUID; pszKeyName: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Class_Key_NameW(ClassGuid: PGUID; pszKeyName: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Class_Key_Name(ClassGuid: PGUID; pszKeyName: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Class_Key_Name_ExA(ClassGuid: PGUID; pszKeyName: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Class_Key_Name_ExW(ClassGuid: PGUID; pszKeyName: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Class_Key_Name_Ex(ClassGuid: PGUID; pszKeyName: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Depth(var ulDepth: ULONG; dnDevInst: DEVINST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Depth_Ex(var ulDepth: ULONG; dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_IDA(dnDevInst: DEVINST; Buffer: PAnsiChar;
|
|
BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Device_IDW(dnDevInst: DEVINST; Buffer: PWideChar;
|
|
BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Device_ID(dnDevInst: DEVINST; Buffer: PTSTR;
|
|
BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_ID_ExA(dnDevInst: DEVINST; Buffer: PAnsiChar;
|
|
BufferLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Device_ID_ExW(dnDevInst: DEVINST; Buffer: PWideChar;
|
|
BufferLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Device_ID_Ex(dnDevInst: DEVINST; Buffer: PTSTR;
|
|
BufferLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_ID_ListA(const pszFilter: PAnsiChar; // OPTIONAL
|
|
Buffer: PAnsiChar; BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Device_ID_ListW(const pszFilter: PWideChar; // OPTIONAL
|
|
Buffer: PWideChar; BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Device_ID_List(const pszFilter: PTSTR; // OPTIONAL
|
|
Buffer: PTSTR; BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_ID_List_ExA(const pszFilter: PAnsiChar; // OPTIONAL
|
|
Buffer: PAnsiChar; BufferLen: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Device_ID_List_ExW(const pszFilter: PWideChar; // OPTIONAL
|
|
Buffer: PWideChar; BufferLen: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Device_ID_List_Ex(const pszFilter: PTSTR; // OPTIONAL
|
|
Buffer: PTSTR; BufferLen: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_ID_List_SizeA(var ulLen: ULONG;
|
|
const pszFilter: PAnsiChar; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Device_ID_List_SizeW(var ulLen: ULONG;
|
|
const pszFilter: PWideChar; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Device_ID_List_Size(var pulLen: ULONG;
|
|
const pszFilter: PTSTR; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_ID_List_Size_ExA(var ulLen: ULONG;
|
|
const pszFilter: PAnsiChar; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Device_ID_List_Size_ExW(var ulLen: ULONG;
|
|
const pszFilter: PWideChar; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Device_ID_List_Size_Ex(var ulLen: ULONG;
|
|
const pszFilter: PTSTR; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_ID_Size(var ulLen: ULONG;
|
|
dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_ID_Size_Ex(var ulLen: ULONG; dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_DevNode_Registry_PropertyA(dnDevInst: DEVINST;
|
|
ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_DevNode_Registry_PropertyW(dnDevInst: DEVINST;
|
|
ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_DevNode_Registry_Property(dnDevInst: DEVINST;
|
|
ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_DevNode_Registry_Property_ExA(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_DevNode_Registry_Property_ExW(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_DevNode_Registry_Property_Ex(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_DevInst_Registry_PropertyA(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_DevInst_Registry_PropertyW(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_DevInst_Registry_Property(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_DevInst_Registry_Property_ExA(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_DevInst_Registry_Property_ExW(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_DevInst_Registry_Property_Ex(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$IFDEF WINXP_UP}
|
|
|
|
function CM_Get_DevNode_Custom_PropertyA(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PAnsiChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_DevNode_Custom_PropertyW(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PWideChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_DevNode_Custom_Property(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PTSTR;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_DevNode_Custom_Property_ExA(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PAnsiChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_DevNode_Custom_Property_ExW(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PWideChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_DevNode_Custom_Property_Ex(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PTSTR;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_DevInst_Custom_PropertyA(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PAnsiChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_DevInst_Custom_PropertyW(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PWideChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_DevInst_Custom_Property(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PTSTR;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_DevInst_Custom_Property_ExA(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PAnsiChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_DevInst_Custom_Property_ExW(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PWideChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_DevInst_Custom_Property_Ex(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PTSTR;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$ENDIF WINXP_UP}
|
|
|
|
function CM_Get_DevNode_Status(var ulStatus: ULONG; var ulProblemNumber: ULONG;
|
|
dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_DevInst_Status(var ulStatus: ULONG; var ulProblemNumber: ULONG;
|
|
dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_DevNode_Status_Ex(var ulStatus: ULONG; var ulProblemNumber: ULONG;
|
|
dnDevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_DevInst_Status_Ex(var ulStatus: ULONG; var ulProblemNumber: ULONG;
|
|
dnDevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_First_Log_Conf(plcLogConf: PLOG_CONF; // OPTIONAL
|
|
dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_First_Log_Conf_Ex(plcLogConf: PLOG_CONF; // OPTIONAL
|
|
dnDevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Global_State(var ulState: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Global_State_Ex(var ulState: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Hardware_Profile_InfoA(ulIndex: ULONG;
|
|
var HWProfileInfo: HWPROFILEINFO_A; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Hardware_Profile_InfoW(ulIndex: ULONG;
|
|
var HWProfileInfo: HWPROFILEINFO_W; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Hardware_Profile_Info(ulIndex: ULONG;
|
|
var HWProfileInfo: HWPROFILEINFO; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Hardware_Profile_Info_ExA(ulIndex: ULONG;
|
|
var HWProfileInfo: HWPROFILEINFO_A; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Hardware_Profile_Info_ExW(ulIndex: ULONG;
|
|
var HWProfileInfo: HWPROFILEINFO_W; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Hardware_Profile_Info_Ex(ulIndex: ULONG;
|
|
var HWProfileInfo: HWPROFILEINFO; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_HW_Prof_FlagsA(szDevInstName: DEVINSTID_A;
|
|
ulHardwareProfile: ULONG; var ulValue: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_HW_Prof_FlagsW(szDevInstName: DEVINSTID_W;
|
|
ulHardwareProfile: ULONG; var ulValue: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_HW_Prof_Flags(szDevInstName: DEVINSTID;
|
|
ulHardwareProfile: ULONG; var ulValue: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_HW_Prof_Flags_ExA(szDevInstName: DEVINSTID_A;
|
|
ulHardwareProfile: ULONG; var ulValue: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_HW_Prof_Flags_ExW(szDevInstName: DEVINSTID_W;
|
|
ulHardwareProfile: ULONG; var ulValue: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_HW_Prof_Flags_Ex(szDevInstName: DEVINSTID;
|
|
ulHardwareProfile: ULONG; var ulValue: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$IFNDEF WINNT4}
|
|
|
|
function CM_Get_Device_Interface_AliasA(const pszDeviceInterface: PAnsiChar;
|
|
AliasInterfaceGuid: PGUID; pszAliasDeviceInterface: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Device_Interface_AliasW(const pszDeviceInterface: PWideChar;
|
|
AliasInterfaceGuid: PGUID; pszAliasDeviceInterface: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Device_Interface_Alias(const pszDeviceInterface: PTSTR;
|
|
AliasInterfaceGuid: PGUID; pszAliasDeviceInterface: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_Interface_Alias_ExA(const pszDeviceInterface: PAnsiChar;
|
|
AliasInterfaceGuid: PGUID; pszAliasDeviceInterface: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Device_Interface_Alias_ExW(const pszDeviceInterface: PWideChar;
|
|
AliasInterfaceGuid: PGUID; pszAliasDeviceInterface: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Device_Interface_Alias_Ex(const pszDeviceInterface: PTSTR;
|
|
AliasInterfaceGuid: PGUID; pszAliasDeviceInterface: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_Interface_ListA(InterfaceClassGuid: PGUID;
|
|
pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
Buffer: PAnsiChar; BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Device_Interface_ListW(InterfaceClassGuid: PGUID;
|
|
pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
Buffer: PWideChar; BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Device_Interface_List(InterfaceClassGuid: PGUID;
|
|
pDeviceID: DEVINSTID; // OPTIONAL
|
|
Buffer: PTSTR; BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_Interface_List_ExA(InterfaceClassGuid: PGUID;
|
|
pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
Buffer: PAnsiChar; BufferLen: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Device_Interface_List_ExW(InterfaceClassGuid: PGUID;
|
|
pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
Buffer: PWideChar; BufferLen: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Device_Interface_List_Ex(InterfaceClassGuid: PGUID;
|
|
pDeviceID: DEVINSTID; // OPTIONAL
|
|
Buffer: PTSTR; BufferLen: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_Interface_List_SizeA(var ulLen: ULONG;
|
|
InterfaceClassGuid: PGUID; pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Device_Interface_List_SizeW(var ulLen: ULONG;
|
|
InterfaceClassGuid: PGUID; pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Get_Device_Interface_List_Size(var ulLen: ULONG;
|
|
InterfaceClassGuid: PGUID; pDeviceID: DEVINSTID; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Device_Interface_List_Size_ExA(var ulLen: ULONG;
|
|
InterfaceClassGuid: PGUID; pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Device_Interface_List_Size_ExW(var ulLen: ULONG;
|
|
InterfaceClassGuid: PGUID; pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Device_Interface_List_Size_Ex(var ulLen: ULONG;
|
|
InterfaceClassGuid: PGUID; pDeviceID: DEVINSTID; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Log_Conf_Priority(lcLogConf: LOG_CONF;
|
|
var Priority: PRIORITY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Log_Conf_Priority_Ex(lcLogConf: LOG_CONF;
|
|
var Priority: PRIORITY; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$ENDIF !WINNT4}
|
|
|
|
function CM_Get_Next_Log_Conf(plcLogConf: PLOG_CONF; // OPTIONAL
|
|
lcLogConf: LOG_CONF; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Next_Log_Conf_Ex(plcLogConf: PLOG_CONF; // OPTIONAL
|
|
lcLogConf: LOG_CONF; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Parent(var dnDevInstParent: DEVINST;
|
|
dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Parent_Ex(var dnDevInstParent: DEVINST;
|
|
dnDevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Res_Des_Data(rdResDes: RES_DES; Buffer: Pointer;
|
|
BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Res_Des_Data_Ex(rdResDes: RES_DES; Buffer: Pointer;
|
|
BufferLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Res_Des_Data_Size(var ulSize: ULONG; rdResDes: RES_DES;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Res_Des_Data_Size_Ex(var ulSize: ULONG; rdResDes: RES_DES;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Sibling(var dnDevInstSibling: DEVINST;
|
|
DevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Sibling_Ex(var dnDevInstSibling: DEVINST;
|
|
DevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Version: WORD; stdcall;
|
|
|
|
function CM_Get_Version_Ex(hMachine: HMACHINE): WORD; stdcall;
|
|
|
|
{$IFDEF WINXP_UP}
|
|
|
|
function CM_Is_Version_Available(wVersion: WORD): BOOL; stdcall;
|
|
|
|
function CM_Is_Version_Available_Ex(wVersion: WORD;
|
|
hMachine: HMACHINE): BOOL; stdcall;
|
|
|
|
{$ENDIF WINXP_UP}
|
|
|
|
function CM_Intersect_Range_List(rlhOld1: RANGE_LIST;rlhOld2: RANGE_LIST;
|
|
rlhNew: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Invert_Range_List(rlhOld: RANGE_LIST; rlhNew: RANGE_LIST;
|
|
ullMaxValue: DWORDLONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Locate_DevNodeA(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Locate_DevNodeW(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Locate_DevNode(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Locate_DevNode_ExA(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Locate_DevNode_ExW(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Locate_DevNode_Ex(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Locate_DevInstA(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Locate_DevInstW(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Locate_DevInst(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Locate_DevInst_ExA(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Locate_DevInst_ExW(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Locate_DevInst_Ex(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Merge_Range_List(rlhOld1: RANGE_LIST; rlhOld2: RANGE_LIST;
|
|
rlhNew: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Modify_Res_Des(var rdResDesModified: RES_DES;
|
|
rdResDes: RES_DES; ResourceID: RESOURCEID; ResourceData: Pointer;
|
|
ResourceLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Modify_Res_Des_Ex(var rdResDesModified: RES_DES;
|
|
rdResDes: RES_DES; ResourceID: RESOURCEID; ResourceData: Pointer;
|
|
ResourceLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Move_DevNode(dnFromDevInst: DEVINST;
|
|
dnToDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Move_DevInst(dnFromDevInst: DEVINST;
|
|
dnToDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Move_DevNode_Ex(dnFromDevInst: DEVINST;
|
|
dnToDevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Move_DevInst_Ex(dnFromDevInst: DEVINST;
|
|
dnToDevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Next_Range(var reElement: RANGE_ELEMENT;
|
|
var ullStart: DWORDLONG; var ullEnd: DWORDLONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Next_Res_Des(var rdResDesNext: RES_DES;
|
|
rdResDes: RES_DES; ForResource: RESOURCEID; var ResourceID: RESOURCEID;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Next_Res_Des_Ex(var rdResDesNext: RES_DES;
|
|
rdResDes: RES_DES; ForResource: RESOURCEID; var ResourceID: RESOURCEID;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Open_Class_KeyA(ClassGuid: PGUID; // OPTIONAL
|
|
const pszClassName: PAnsiChar; // OPTIONAL
|
|
samDesired: REGSAM; Disposition: REGDISPOSITION;
|
|
var hkClass: HKEY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Open_Class_KeyW(ClassGuid: PGUID; // OPTIONAL
|
|
const pszClassName: PWideChar; // OPTIONAL
|
|
samDesired: REGSAM; Disposition: REGDISPOSITION;
|
|
var hkClass: HKEY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Open_Class_Key(ClassGuid: PGUID; // OPTIONAL
|
|
const pszClassName: PTSTR; // OPTIONAL
|
|
samDesired: REGSAM; Disposition: REGDISPOSITION;
|
|
var hkClass: HKEY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Open_Class_Key_ExA(pszClassGuid: PGUID; // OPTIONAL
|
|
const pszClassName: PAnsiChar; // OPTIONAL
|
|
samDesired: REGSAM; Disposition: REGDISPOSITION;
|
|
var hkClass: HKEY; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Open_Class_Key_ExW(pszClassGuid: PGUID; // OPTIONAL
|
|
const pszClassName: PWideChar; // OPTIONAL
|
|
samDesired: REGSAM; Disposition: REGDISPOSITION;
|
|
var hkClass: HKEY; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Open_Class_Key_Ex(pszClassGuid: PGUID; // OPTIONAL
|
|
const pszClassName: PTSTR; // OPTIONAL
|
|
samDesired: REGSAM; Disposition: REGDISPOSITION;
|
|
var hkClass: HKEY; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Open_DevNode_Key(dnDevNode: DEVINST; samDesired: REGSAM;
|
|
ulHardwareProfile: ULONG; Disposition: REGDISPOSITION;
|
|
var hkDevice: HKEY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Open_DevInst_Key(dnDevNode: DEVINST; samDesired: REGSAM;
|
|
ulHardwareProfile: ULONG; Disposition: REGDISPOSITION;
|
|
var hkDevice: HKEY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Open_DevNode_Key_Ex(dnDevNode: DEVINST; samDesired: REGSAM;
|
|
ulHardwareProfile: ULONG; Disposition: REGDISPOSITION; var hkDevice: HKEY;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Open_DevInst_Key_Ex(dnDevNode: DEVINST; samDesired: REGSAM;
|
|
ulHardwareProfile: ULONG; Disposition: REGDISPOSITION; var hkDevice: HKEY;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Query_Arbitrator_Free_Data(pData: Pointer; DataLen: ULONG;
|
|
dnDevInst: DEVINST; ResourceID: RESOURCEID; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Query_Arbitrator_Free_Data_Ex(pData: Pointer; DataLen: ULONG;
|
|
dnDevInst: DEVINST; ResourceID: RESOURCEID; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Query_Arbitrator_Free_Size(var ulSize: ULONG; dnDevInst: DEVINST;
|
|
ResourceID: RESOURCEID; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Query_Arbitrator_Free_Size_Ex(var ulSize: ULONG; dnDevInst: DEVINST;
|
|
ResourceID: RESOURCEID; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Query_Remove_SubTree(dnAncestor: DEVINST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Query_Remove_SubTree_Ex(dnAncestor: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$IFDEF WIN2000_UP}
|
|
|
|
function CM_Query_And_Remove_SubTreeA(dnAncestor: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PAnsiChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Query_And_Remove_SubTreeW(dnAncestor: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PWideChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Query_And_Remove_SubTree(dnAncestor: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PTSTR; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Query_And_Remove_SubTree_ExA(dnAncestor: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PAnsiChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Query_And_Remove_SubTree_ExW(dnAncestor: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PWideChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Query_And_Remove_SubTree_Ex(dnAncestor: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PTSTR; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Request_Device_EjectA(dnDevInst: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PAnsiChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Request_Device_EjectW(dnDevInst: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PWideChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Request_Device_Eject(dnDevInst: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PTSTR; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Request_Device_Eject_ExA(dnDevInst: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PAnsiChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Request_Device_Eject_ExW(dnDevInst: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PWideChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Request_Device_Eject_Ex(dnDevInst: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PTSTR; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$ENDIF WIN2000_UP}
|
|
|
|
function CM_Reenumerate_DevNode(dnDevInst: DEVINST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Reenumerate_DevInst(dnDevInst: DEVINST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Reenumerate_DevNode_Ex(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Reenumerate_DevInst_Ex(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$IFNDEF WINNT4}
|
|
|
|
function CM_Register_Device_InterfaceA(dnDevInst: DEVINST;
|
|
InterfaceClassGuid: PGUID;
|
|
const pszReference: PAnsiChar; // OPTIONAL
|
|
pszDeviceInterface: PAnsiChar; var ulLength: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Register_Device_InterfaceW(dnDevInst: DEVINST;
|
|
InterfaceClassGuid: PGUID;
|
|
const pszReference: PWideChar; // OPTIONAL
|
|
pszDeviceInterface: PWideChar; var ulLength: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Register_Device_Interface(dnDevInst: DEVINST;
|
|
InterfaceClassGuid: PGUID;
|
|
const pszReference: PTSTR; // OPTIONAL
|
|
pszDeviceInterface: PTSTR; var ulLength: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Register_Device_Interface_ExA(dnDevInst: DEVINST;
|
|
InterfaceClassGuid: PGUID;
|
|
const pszReference: PAnsiChar; // OPTIONAL
|
|
pszDeviceInterface: PAnsiChar; var ulLength: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Register_Device_Interface_ExW(dnDevInst: DEVINST;
|
|
InterfaceClassGuid: PGUID;
|
|
const pszReference: PWideChar; // OPTIONAL
|
|
pszDeviceInterface: PWideChar; var ulLength: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Register_Device_Interface_Ex(dnDevInst: DEVINST;
|
|
InterfaceClassGuid: PGUID;
|
|
const pszReference: PTSTR; // OPTIONAL
|
|
pszDeviceInterface: PTSTR; var ulLength: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Set_DevNode_Problem_Ex(dnDevInst: DEVINST;
|
|
ulProblem: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Set_DevInst_Problem_Ex(dnDevInst: DEVINST;
|
|
ulProblem: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Set_DevNode_Problem(dnDevInst: DEVINST; ulProblem: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Set_DevInst_Problem(dnDevInst: DEVINST; ulProblem: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Unregister_Device_InterfaceA(const pszDeviceInterface: PAnsiChar;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Unregister_Device_InterfaceW(const pszDeviceInterface: PWideChar;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Unregister_Device_Interface(const pszDeviceInterface: PTSTR;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Unregister_Device_Interface_ExA(const pszDeviceInterface: PAnsiChar;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Unregister_Device_Interface_ExW(const pszDeviceInterface: PWideChar;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Unregister_Device_Interface_Ex(const pszDeviceInterface: PTSTR;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Register_Device_Driver(dnDevInst: DEVINST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Register_Device_Driver_Ex(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$ENDIF !WINNT4}
|
|
|
|
function CM_Remove_SubTree(dnAncestor: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Remove_SubTree_Ex(dnAncestor: DEVINST; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Set_DevNode_Registry_PropertyA(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Set_DevNode_Registry_PropertyW(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Set_DevNode_Registry_Property(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Set_DevNode_Registry_Property_ExA(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Set_DevNode_Registry_Property_ExW(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Set_DevNode_Registry_Property_Ex(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Set_DevInst_Registry_PropertyA(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Set_DevInst_Registry_PropertyW(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Set_DevInst_Registry_Property(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Set_DevInst_Registry_Property_ExA(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Set_DevInst_Registry_Property_ExW(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Set_DevInst_Registry_Property_Ex(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$IFNDEF WINNT4}
|
|
function CM_Is_Dock_Station_Present(var bPresent: BOOL): CONFIGRET; stdcall;
|
|
{$ENDIF !WINNT4}
|
|
|
|
{$IFDEF WIN2000_UP}
|
|
function CM_Is_Dock_Station_Present_Ex(var bPresent: BOOL;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
{$ENDIF WIN2000_UP}
|
|
|
|
{$IFNDEF WINNT4}
|
|
function CM_Request_Eject_PC: CONFIGRET; stdcall;
|
|
{$ENDIF !WINNT4}
|
|
|
|
{$IFDEF WIN2000_UP}
|
|
function CM_Request_Eject_PC_Ex(hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
{$ENDIF WIN2000_UP}
|
|
|
|
function CM_Set_HW_Prof_FlagsA(szDevInstName: DEVINSTID_A;
|
|
ulConfig: ULONG; ulValue: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Set_HW_Prof_FlagsW(szDevInstName: DEVINSTID_W;
|
|
ulConfig: ULONG; ulValue: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
function CM_Set_HW_Prof_Flags(szDevInstName: DEVINSTID;
|
|
ulConfig: ULONG; ulValue: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Set_HW_Prof_Flags_ExA(szDevInstName: DEVINSTID_A;
|
|
ulConfig: ULONG; ulValue: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Set_HW_Prof_Flags_ExW(szDevInstName: DEVINSTID_W;
|
|
ulConfig: ULONG; ulValue: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Set_HW_Prof_Flags_Ex(szDevInstName: DEVINSTID;
|
|
ulConfig: ULONG; ulValue: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Setup_DevNode(dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Setup_DevInst(dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Setup_DevNode_Ex(dnDevInst: DEVINST; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Setup_DevInst_Ex(dnDevInst: DEVINST; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Test_Range_Available(ullStartValue: DWORDLONG; ullEndValue: DWORDLONG;
|
|
rlh: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Uninstall_DevNode(dnPhantom: DEVNODE; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Uninstall_DevInst(dnPhantom: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Uninstall_DevNode_Ex(dnPhantom: DEVNODE; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Uninstall_DevInst_Ex(dnPhantom: DEVINST; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Run_Detection(ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Run_Detection_Ex(ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Set_HW_Prof(ulHardwareProfile: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Set_HW_Prof_Ex(ulHardwareProfile: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$IFDEF WIN2000_UP}
|
|
|
|
function CM_Query_Resource_Conflict_List(var clConflictList: CONFLICT_LIST;
|
|
dnDevInst: DEVINST; ResourceID: RESOURCEID; ResourceData: Pointer;
|
|
ResourceLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Free_Resource_Conflict_Handle(clConflictList: CONFLICT_LIST): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Resource_Conflict_Count(clConflictList: CONFLICT_LIST;
|
|
var ulCount: ULONG): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Resource_Conflict_DetailsA(clConflictList: CONFLICT_LIST;
|
|
ulIndex: ULONG; var ConflictDetails: CONFLICT_DETAILS_A): CONFIGRET; stdcall;
|
|
function CM_Get_Resource_Conflict_DetailsW(clConflictList: CONFLICT_LIST;
|
|
ulIndex: ULONG; var ConflictDetails: CONFLICT_DETAILS_W): CONFIGRET; stdcall;
|
|
function CM_Get_Resource_Conflict_Details(clConflictList: CONFLICT_LIST;
|
|
ulIndex: ULONG; var ConflictDetails: CONFLICT_DETAILS): CONFIGRET; stdcall;
|
|
|
|
function CM_Get_Class_Registry_PropertyA(ClassGUID: PGUID; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Class_Registry_PropertyW(ClassGUID: PGUID; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Get_Class_Registry_Property(ClassGUID: PGUID; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_Set_Class_Registry_PropertyA(ClassGUID: PGUID; ulProperty: ULONG;
|
|
Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Set_Class_Registry_PropertyW(ClassGUID: PGUID; ulProperty: ULONG;
|
|
Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
function CM_Set_Class_Registry_Property(ClassGUID: PGUID; ulProperty: ULONG;
|
|
Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
function CM_WaitNoPendingInstallEvents(dwTimeout: DWORD): DWORD; stdcall;
|
|
function CMP_WaitNoPendingInstallEvents(dwTimeout: DWORD): DWORD; stdcall;
|
|
|
|
{$ENDIF WIN2000_UP}
|
|
|
|
{$ELSE}
|
|
|
|
type
|
|
TCM_Add_Empty_Log_Conf = function(var lcLogConf: LOG_CONF;
|
|
dnDevInst: DEVINST; Priority: PRIORITY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Add_Empty_Log_Conf_Ex = function(var lcLogConf: LOG_CONF;
|
|
dnDevInst: DEVINST; Priority: PRIORITY; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Add_IDA = function(dnDevInst: DEVINST; pszID: PAnsiChar;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Add_IDW = function(dnDevInst: DEVINST; pszID: PWideChar;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Add_ID = function(dnDevInst: DEVINST; pszID: PTSTR;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Add_ID_ExA = function(dnDevInst: DEVINST; pszID: PAnsiChar;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Add_ID_ExW = function(dnDevInst: DEVINST; pszID: PWideChar;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Add_ID_Ex = function(dnDevInst: DEVINST; pszID: PTSTR;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Add_Range = function(ullStartValue: DWORDLONG;
|
|
ullEndValue: DWORDLONG; rlh: RANGE_LIST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Add_Res_Des = function(var rdResDes: RES_DES; lcLogConf: LOG_CONF;
|
|
ResourceID: RESOURCEID; ResourceData: Pointer; ResourceLen: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Add_Res_Des_Ex = function(var rdResDes: RES_DES;
|
|
lcLogConf: LOG_CONF; ResourceID: RESOURCEID; ResourceData: Pointer;
|
|
ResourceLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Connect_MachineA = function(const UNCServerName: PAnsiChar;
|
|
var hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Connect_MachineW = function(const UNCServerName: PWideChar;
|
|
var hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Connect_Machine = function(const UNCServerName: PTSTR;
|
|
var hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Create_DevNodeA = function(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_A;
|
|
dnParent: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Create_DevNodeW = function(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_W;
|
|
dnParent: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Create_DevNode = function(var dnDevInst: DEVINST; pDeviceID: DEVINSTID;
|
|
dnParent: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Create_DevNode_ExA = function(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_A;
|
|
dnParent: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Create_DevNode_ExW = function(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_W;
|
|
dnParent: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Create_DevNode_Ex = function(var dnDevInst: DEVINST; pDeviceID: DEVINSTID;
|
|
dnParent: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Create_DevInstA = function(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_A;
|
|
dnParent: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Create_DevInstW = function(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_W;
|
|
dnParent: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Create_DevInst = function(var dnDevInst: DEVINST; pDeviceID: DEVINSTID;
|
|
dnParent: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Create_DevInst_ExA = function(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_A;
|
|
dnParent: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Create_DevInst_ExW = function(var dnDevInst: DEVINST; pDeviceID: DEVINSTID_W;
|
|
dnParent: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Create_DevInst_Ex = function(var dnDevInst: DEVINST; pDeviceID: DEVINSTID;
|
|
dnParent: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Create_Range_List = function(var rlh: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Delete_Class_Key = function(ClassGuid: PGUID; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Delete_Class_Key_Ex = function(ClassGuid: PGUID; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Delete_DevNode_Key = function(dnDevNode: DEVNODE;
|
|
ulHardwareProfile: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Delete_DevNode_Key_Ex = function(dnDevNode: DEVNODE;
|
|
ulHardwareProfile: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Delete_DevInst_Key = function(dnDevNode: DEVINST;
|
|
ulHardwareProfile: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Delete_DevInst_Key_Ex = function(dnDevNode: DEVINST; ulHardwareProfile: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Delete_Range = function(ullStartValue: DWORDLONG; ullEndValue: DWORDLONG;
|
|
rlh: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Detect_Resource_Conflict = function(dnDevInst: DEVINST;
|
|
ResourceID: RESOURCEID; ResourceData: Pointer; ResourceLen: ULONG;
|
|
var bConflictDetected: BOOL; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Detect_Resource_Conflict_Ex = function(dnDevInst: DEVINST;
|
|
ResourceID: RESOURCEID; ResourceData: Pointer; ResourceLen: ULONG;
|
|
var bConflictDetected: BOOL; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Disable_DevNode = function(dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Disable_DevNode_Ex = function(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Disable_DevInst = function(dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Disable_DevInst_Ex = function(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Disconnect_Machine = function(hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Dup_Range_List = function(rlhOld: RANGE_LIST; rlhNew: RANGE_LIST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Enable_DevNode = function(dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Enable_DevNode_Ex = function(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Enable_DevInst = function(dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Enable_DevInst_Ex = function(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Enumerate_Classes = function(ulClassIndex: ULONG;
|
|
var ClassGuid: TGUID; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Enumerate_Classes_Ex = function(ulClassIndex: ULONG; var ClassGuid: TGUID;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Enumerate_EnumeratorsA = function(ulEnumIndex: ULONG; Buffer: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Enumerate_EnumeratorsW = function(ulEnumIndex: ULONG; Buffer: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Enumerate_Enumerators = function(ulEnumIndex: ULONG; Buffer: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Enumerate_Enumerators_ExA = function(ulEnumIndex: ULONG; Buffer: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Enumerate_Enumerators_ExW = function(ulEnumIndex: ULONG; Buffer: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Enumerate_Enumerators_Ex = function(ulEnumIndex: ULONG; Buffer: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Find_Range = function(var pullStart: DWORDLONG; ullStart: DWORDLONG;
|
|
ulLength: ULONG; ullAlignment: DWORDLONG; ullEnd: DWORDLONG;
|
|
rlh: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_First_Range = function(rlh: RANGE_LIST; var ullStart: DWORDLONG;
|
|
var ullEnd: DWORDLONG; preElement: PRANGE_ELEMENT;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Free_Log_Conf = function(lcLogConfToBeFreed: LOG_CONF;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Free_Log_Conf_Ex = function(lcLogConfToBeFreed: LOG_CONF;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Free_Log_Conf_Handle = function(lcLogConf: LOG_CONF): CONFIGRET; stdcall;
|
|
|
|
TCM_Free_Range_List = function(rlh: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Free_Res_Des = function(prdResDes: PRES_DES;
|
|
rdResDes: RES_DES; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Free_Res_Des_Ex = function(prdResDes: PRES_DES; rdResDes: RES_DES;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Free_Res_Des_Handle = function(rdResDes: RES_DES): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Child = function(var dnDevInstChild: DEVINST;
|
|
dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Child_Ex = function(var dnDevInstChild: DEVINST; dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Class_NameA = function(ClassGuid: PGUID; Buffer: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Class_NameW = function(ClassGuid: PGUID; Buffer: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Class_Name = function(ClassGuid: PGUID; Buffer: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Class_Name_ExA = function(ClassGuid: PGUID; Buffer: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Class_Name_ExW = function(ClassGuid: PGUID; Buffer: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Class_Name_Ex = function(ClassGuid: PGUID; Buffer: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Class_Key_NameA = function(ClassGuid: PGUID; pszKeyName: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Class_Key_NameW = function(ClassGuid: PGUID; pszKeyName: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Class_Key_Name = function(ClassGuid: PGUID; pszKeyName: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Class_Key_Name_ExA = function(ClassGuid: PGUID; pszKeyName: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Class_Key_Name_ExW = function(ClassGuid: PGUID; pszKeyName: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Class_Key_Name_Ex = function(ClassGuid: PGUID; pszKeyName: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Depth = function(var ulDepth: ULONG; dnDevInst: DEVINST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Depth_Ex = function(var ulDepth: ULONG; dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_IDA = function(dnDevInst: DEVINST; Buffer: PAnsiChar;
|
|
BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Device_IDW = function(dnDevInst: DEVINST; Buffer: PWideChar;
|
|
BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Device_ID = function(dnDevInst: DEVINST; Buffer: PTSTR;
|
|
BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_ID_ExA = function(dnDevInst: DEVINST; Buffer: PAnsiChar;
|
|
BufferLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Device_ID_ExW = function(dnDevInst: DEVINST; Buffer: PWideChar;
|
|
BufferLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Device_ID_Ex = function(dnDevInst: DEVINST; Buffer: PTSTR;
|
|
BufferLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_ID_ListA = function(const pszFilter: PAnsiChar; // OPTIONAL
|
|
Buffer: PAnsiChar; BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Device_ID_ListW = function(const pszFilter: PWideChar; // OPTIONAL
|
|
Buffer: PWideChar; BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Device_ID_List = function(const pszFilter: PTSTR; // OPTIONAL
|
|
Buffer: PTSTR; BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_ID_List_ExA = function(const pszFilter: PAnsiChar; // OPTIONAL
|
|
Buffer: PAnsiChar; BufferLen: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Device_ID_List_ExW = function(const pszFilter: PWideChar; // OPTIONAL
|
|
Buffer: PWideChar; BufferLen: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Device_ID_List_Ex = function(const pszFilter: PTSTR; // OPTIONAL
|
|
Buffer: PTSTR; BufferLen: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_ID_List_SizeA = function(var ulLen: ULONG;
|
|
const pszFilter: PAnsiChar; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Device_ID_List_SizeW = function(var ulLen: ULONG;
|
|
const pszFilter: PWideChar; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Device_ID_List_Size = function(var pulLen: ULONG;
|
|
const pszFilter: PTSTR; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_ID_List_Size_ExA = function(var ulLen: ULONG;
|
|
const pszFilter: PAnsiChar; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Device_ID_List_Size_ExW = function(var ulLen: ULONG;
|
|
const pszFilter: PWideChar; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Device_ID_List_Size_Ex = function(var ulLen: ULONG;
|
|
const pszFilter: PTSTR; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_ID_Size = function(var ulLen: ULONG;
|
|
dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_ID_Size_Ex = function(var ulLen: ULONG; dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_DevNode_Registry_PropertyA = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_DevNode_Registry_PropertyW = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_DevNode_Registry_Property = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_DevNode_Registry_Property_ExA = function(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_DevNode_Registry_Property_ExW = function(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_DevNode_Registry_Property_Ex = function(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_DevInst_Registry_PropertyA = function(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_DevInst_Registry_PropertyW = function(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_DevInst_Registry_Property = function(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_DevInst_Registry_Property_ExA = function(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_DevInst_Registry_Property_ExW = function(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_DevInst_Registry_Property_Ex = function(dnDevInst: DEVINST; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$IFDEF WINXP_UP}
|
|
|
|
TCM_Get_DevNode_Custom_PropertyA = function(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PAnsiChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_DevNode_Custom_PropertyW = function(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PWideChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_DevNode_Custom_Property = function(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PTSTR;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_DevNode_Custom_Property_ExA = function(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PAnsiChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_DevNode_Custom_Property_ExW = function(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PWideChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_DevNode_Custom_Property_Ex = function(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PTSTR;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_DevInst_Custom_PropertyA = function(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PAnsiChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_DevInst_Custom_PropertyW = function(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PWideChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_DevInst_Custom_Property = function(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PTSTR;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_DevInst_Custom_Property_ExA = function(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PAnsiChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_DevInst_Custom_Property_ExW = function(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PWideChar;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_DevInst_Custom_Property_Ex = function(dnDevInst: DEVINST;
|
|
const pszCustomPropertyName: PTSTR;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$ENDIF WINXP_UP}
|
|
|
|
TCM_Get_DevNode_Status = function(var ulStatus: ULONG; var ulProblemNumber: ULONG;
|
|
dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_DevInst_Status = function(var ulStatus: ULONG; var ulProblemNumber: ULONG;
|
|
dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_DevNode_Status_Ex = function(var ulStatus: ULONG; var ulProblemNumber: ULONG;
|
|
dnDevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_DevInst_Status_Ex = function(var ulStatus: ULONG; var ulProblemNumber: ULONG;
|
|
dnDevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_First_Log_Conf = function(plcLogConf: PLOG_CONF; // OPTIONAL
|
|
dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_First_Log_Conf_Ex = function(plcLogConf: PLOG_CONF; // OPTIONAL
|
|
dnDevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Global_State = function(var ulState: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Global_State_Ex = function(var ulState: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Hardware_Profile_InfoA = function(ulIndex: ULONG;
|
|
var HWProfileInfo: HWPROFILEINFO_A; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Hardware_Profile_InfoW = function(ulIndex: ULONG;
|
|
var HWProfileInfo: HWPROFILEINFO_W; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Hardware_Profile_Info = function(ulIndex: ULONG;
|
|
var HWProfileInfo: HWPROFILEINFO; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Hardware_Profile_Info_ExA = function(ulIndex: ULONG;
|
|
var HWProfileInfo: HWPROFILEINFO_A; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Hardware_Profile_Info_ExW = function(ulIndex: ULONG;
|
|
var HWProfileInfo: HWPROFILEINFO_W; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Hardware_Profile_Info_Ex = function(ulIndex: ULONG;
|
|
var HWProfileInfo: HWPROFILEINFO; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_HW_Prof_FlagsA = function(szDevInstName: DEVINSTID_A;
|
|
ulHardwareProfile: ULONG; var ulValue: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_HW_Prof_FlagsW = function(szDevInstName: DEVINSTID_W;
|
|
ulHardwareProfile: ULONG; var ulValue: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_HW_Prof_Flags = function(szDevInstName: DEVINSTID;
|
|
ulHardwareProfile: ULONG; var ulValue: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_HW_Prof_Flags_ExA = function(szDevInstName: DEVINSTID_A;
|
|
ulHardwareProfile: ULONG; var ulValue: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_HW_Prof_Flags_ExW = function(szDevInstName: DEVINSTID_W;
|
|
ulHardwareProfile: ULONG; var ulValue: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_HW_Prof_Flags_Ex = function(szDevInstName: DEVINSTID;
|
|
ulHardwareProfile: ULONG; var ulValue: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$IFNDEF WINNT4}
|
|
|
|
TCM_Get_Device_Interface_AliasA = function(const pszDeviceInterface: PAnsiChar;
|
|
AliasInterfaceGuid: PGUID; pszAliasDeviceInterface: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Device_Interface_AliasW = function(const pszDeviceInterface: PWideChar;
|
|
AliasInterfaceGuid: PGUID; pszAliasDeviceInterface: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_Interface_Alias = function(const pszDeviceInterface: PTSTR;
|
|
AliasInterfaceGuid: PGUID; pszAliasDeviceInterface: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_Interface_Alias_ExA = function(const pszDeviceInterface: PAnsiChar;
|
|
AliasInterfaceGuid: PGUID; pszAliasDeviceInterface: PAnsiChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Device_Interface_Alias_ExW = function(const pszDeviceInterface: PWideChar;
|
|
AliasInterfaceGuid: PGUID; pszAliasDeviceInterface: PWideChar;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Device_Interface_Alias_Ex = function(const pszDeviceInterface: PTSTR;
|
|
AliasInterfaceGuid: PGUID; pszAliasDeviceInterface: PTSTR;
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_Interface_ListA = function(InterfaceClassGuid: PGUID;
|
|
pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
Buffer: PAnsiChar; BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Device_Interface_ListW = function(InterfaceClassGuid: PGUID;
|
|
pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
Buffer: PWideChar; BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Device_Interface_List = function(InterfaceClassGuid: PGUID;
|
|
pDeviceID: DEVINSTID; // OPTIONAL
|
|
Buffer: PTSTR; BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_Interface_List_ExA = function(InterfaceClassGuid: PGUID;
|
|
pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
Buffer: PAnsiChar; BufferLen: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Device_Interface_List_ExW = function(InterfaceClassGuid: PGUID;
|
|
pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
Buffer: PWideChar; BufferLen: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Device_Interface_List_Ex = function(InterfaceClassGuid: PGUID;
|
|
pDeviceID: DEVINSTID; // OPTIONAL
|
|
Buffer: PTSTR; BufferLen: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_Interface_List_SizeA = function(var ulLen: ULONG;
|
|
InterfaceClassGuid: PGUID; pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Device_Interface_List_SizeW = function(var ulLen: ULONG;
|
|
InterfaceClassGuid: PGUID; pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Get_Device_Interface_List_Size = function(var ulLen: ULONG;
|
|
InterfaceClassGuid: PGUID; pDeviceID: DEVINSTID; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Device_Interface_List_Size_ExA = function(var ulLen: ULONG;
|
|
InterfaceClassGuid: PGUID; pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Device_Interface_List_Size_ExW = function(var ulLen: ULONG;
|
|
InterfaceClassGuid: PGUID; pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Device_Interface_List_Size_Ex = function(var ulLen: ULONG;
|
|
InterfaceClassGuid: PGUID; pDeviceID: DEVINSTID; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Log_Conf_Priority = function(lcLogConf: LOG_CONF;
|
|
var Priority: PRIORITY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Log_Conf_Priority_Ex = function(lcLogConf: LOG_CONF;
|
|
var Priority: PRIORITY; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$ENDIF !WINNT4}
|
|
|
|
TCM_Get_Next_Log_Conf = function(plcLogConf: PLOG_CONF; // OPTIONAL
|
|
lcLogConf: LOG_CONF; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Next_Log_Conf_Ex = function(plcLogConf: PLOG_CONF; // OPTIONAL
|
|
lcLogConf: LOG_CONF; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Parent = function(var dnDevInstParent: DEVINST;
|
|
dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Parent_Ex = function(var dnDevInstParent: DEVINST;
|
|
dnDevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Res_Des_Data = function(rdResDes: RES_DES; Buffer: Pointer;
|
|
BufferLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Res_Des_Data_Ex = function(rdResDes: RES_DES; Buffer: Pointer;
|
|
BufferLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Res_Des_Data_Size = function(var ulSize: ULONG; rdResDes: RES_DES;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Res_Des_Data_Size_Ex = function(var ulSize: ULONG; rdResDes: RES_DES;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Sibling = function(var dnDevInstSibling: DEVINST;
|
|
DevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Sibling_Ex = function(var dnDevInstSibling: DEVINST;
|
|
DevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Version = function: WORD; stdcall;
|
|
|
|
TCM_Get_Version_Ex = function(hMachine: HMACHINE): WORD; stdcall;
|
|
|
|
{$IFDEF WINXP_UP}
|
|
|
|
TCM_Is_Version_Available = function(wVersion: WORD): BOOL; stdcall;
|
|
|
|
TCM_Is_Version_Available_Ex = function(wVersion: WORD;
|
|
hMachine: HMACHINE): BOOL; stdcall;
|
|
|
|
{$ENDIF WINXP_UP}
|
|
|
|
TCM_Intersect_Range_List = function(rlhOld1: RANGE_LIST;rlhOld2: RANGE_LIST;
|
|
rlhNew: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Invert_Range_List = function(rlhOld: RANGE_LIST; rlhNew: RANGE_LIST;
|
|
ullMaxValue: DWORDLONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Locate_DevNodeA = function(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Locate_DevNodeW = function(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Locate_DevNode = function(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Locate_DevNode_ExA = function(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Locate_DevNode_ExW = function(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Locate_DevNode_Ex = function(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Locate_DevInstA = function(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Locate_DevInstW = function(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Locate_DevInst = function(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID; // OPTIONAL
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Locate_DevInst_ExA = function(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_A; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Locate_DevInst_ExW = function(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID_W; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Locate_DevInst_Ex = function(var dnDevInst: DEVINST;
|
|
pDeviceID: DEVINSTID; // OPTIONAL
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Merge_Range_List = function(rlhOld1: RANGE_LIST; rlhOld2: RANGE_LIST;
|
|
rlhNew: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Modify_Res_Des = function(var rdResDesModified: RES_DES;
|
|
rdResDes: RES_DES; ResourceID: RESOURCEID; ResourceData: Pointer;
|
|
ResourceLen: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Modify_Res_Des_Ex = function(var rdResDesModified: RES_DES;
|
|
rdResDes: RES_DES; ResourceID: RESOURCEID; ResourceData: Pointer;
|
|
ResourceLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Move_DevNode = function(dnFromDevInst: DEVINST;
|
|
dnToDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Move_DevInst = function(dnFromDevInst: DEVINST;
|
|
dnToDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Move_DevNode_Ex = function(dnFromDevInst: DEVINST;
|
|
dnToDevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Move_DevInst_Ex = function(dnFromDevInst: DEVINST;
|
|
dnToDevInst: DEVINST; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Next_Range = function(var reElement: RANGE_ELEMENT;
|
|
var ullStart: DWORDLONG; var ullEnd: DWORDLONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Next_Res_Des = function(var rdResDesNext: RES_DES;
|
|
rdResDes: RES_DES; ForResource: RESOURCEID; var ResourceID: RESOURCEID;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Next_Res_Des_Ex = function(var rdResDesNext: RES_DES;
|
|
rdResDes: RES_DES; ForResource: RESOURCEID; var ResourceID: RESOURCEID;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Open_Class_KeyA = function(ClassGuid: PGUID; // OPTIONAL
|
|
const pszClassName: PAnsiChar; // OPTIONAL
|
|
samDesired: REGSAM; Disposition: REGDISPOSITION;
|
|
var hkClass: HKEY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Open_Class_KeyW = function(ClassGuid: PGUID; // OPTIONAL
|
|
const pszClassName: PWideChar; // OPTIONAL
|
|
samDesired: REGSAM; Disposition: REGDISPOSITION;
|
|
var hkClass: HKEY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Open_Class_Key = function(ClassGuid: PGUID; // OPTIONAL
|
|
const pszClassName: PTSTR; // OPTIONAL
|
|
samDesired: REGSAM; Disposition: REGDISPOSITION;
|
|
var hkClass: HKEY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Open_Class_Key_ExA = function(pszClassGuid: PGUID; // OPTIONAL
|
|
const pszClassName: PAnsiChar; // OPTIONAL
|
|
samDesired: REGSAM; Disposition: REGDISPOSITION;
|
|
var hkClass: HKEY; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Open_Class_Key_ExW = function(pszClassGuid: PGUID; // OPTIONAL
|
|
const pszClassName: PWideChar; // OPTIONAL
|
|
samDesired: REGSAM; Disposition: REGDISPOSITION;
|
|
var hkClass: HKEY; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Open_Class_Key_Ex = function(pszClassGuid: PGUID; // OPTIONAL
|
|
const pszClassName: PTSTR; // OPTIONAL
|
|
samDesired: REGSAM; Disposition: REGDISPOSITION;
|
|
var hkClass: HKEY; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Open_DevNode_Key = function(dnDevNode: DEVINST; samDesired: REGSAM;
|
|
ulHardwareProfile: ULONG; Disposition: REGDISPOSITION;
|
|
var hkDevice: HKEY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Open_DevInst_Key = function(dnDevNode: DEVINST; samDesired: REGSAM;
|
|
ulHardwareProfile: ULONG; Disposition: REGDISPOSITION;
|
|
var hkDevice: HKEY; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Open_DevNode_Key_Ex = function(dnDevNode: DEVINST; samDesired: REGSAM;
|
|
ulHardwareProfile: ULONG; Disposition: REGDISPOSITION; var hkDevice: HKEY;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Open_DevInst_Key_Ex = function(dnDevNode: DEVINST; samDesired: REGSAM;
|
|
ulHardwareProfile: ULONG; Disposition: REGDISPOSITION; var hkDevice: HKEY;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Query_Arbitrator_Free_Data = function(pData: Pointer; DataLen: ULONG;
|
|
dnDevInst: DEVINST; ResourceID: RESOURCEID; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Query_Arbitrator_Free_Data_Ex = function(pData: Pointer; DataLen: ULONG;
|
|
dnDevInst: DEVINST; ResourceID: RESOURCEID; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Query_Arbitrator_Free_Size = function(var ulSize: ULONG; dnDevInst: DEVINST;
|
|
ResourceID: RESOURCEID; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Query_Arbitrator_Free_Size_Ex = function(var ulSize: ULONG; dnDevInst: DEVINST;
|
|
ResourceID: RESOURCEID; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Query_Remove_SubTree = function(dnAncestor: DEVINST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Query_Remove_SubTree_Ex = function(dnAncestor: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$IFDEF WIN2000_UP}
|
|
|
|
TCM_Query_And_Remove_SubTreeA = function(dnAncestor: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PAnsiChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Query_And_Remove_SubTreeW = function(dnAncestor: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PWideChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Query_And_Remove_SubTree = function(dnAncestor: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PTSTR; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Query_And_Remove_SubTree_ExA = function(dnAncestor: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PAnsiChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Query_And_Remove_SubTree_ExW = function(dnAncestor: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PWideChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Query_And_Remove_SubTree_Ex = function(dnAncestor: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PTSTR; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Request_Device_EjectA = function(dnDevInst: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PAnsiChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Request_Device_EjectW = function(dnDevInst: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PWideChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Request_Device_Eject = function(dnDevInst: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PTSTR; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Request_Device_Eject_ExA = function(dnDevInst: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PAnsiChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Request_Device_Eject_ExW = function(dnDevInst: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PWideChar; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Request_Device_Eject_Ex = function(dnDevInst: DEVINST;
|
|
pVetoType: PPNP_VETO_TYPE; // OPTIONAL
|
|
pszVetoName: PTSTR; // OPTIONAL
|
|
ulNameLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$ENDIF WIN2000_UP}
|
|
|
|
TCM_Reenumerate_DevNode = function(dnDevInst: DEVINST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Reenumerate_DevInst = function(dnDevInst: DEVINST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Reenumerate_DevNode_Ex = function(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Reenumerate_DevInst_Ex = function(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$IFNDEF WINNT4}
|
|
|
|
TCM_Register_Device_InterfaceA = function(dnDevInst: DEVINST;
|
|
InterfaceClassGuid: PGUID;
|
|
const pszReference: PAnsiChar; // OPTIONAL
|
|
pszDeviceInterface: PAnsiChar; var ulLength: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Register_Device_InterfaceW = function(dnDevInst: DEVINST;
|
|
InterfaceClassGuid: PGUID;
|
|
const pszReference: PWideChar; // OPTIONAL
|
|
pszDeviceInterface: PWideChar; var ulLength: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Register_Device_Interface = function(dnDevInst: DEVINST;
|
|
InterfaceClassGuid: PGUID;
|
|
const pszReference: PTSTR; // OPTIONAL
|
|
pszDeviceInterface: PTSTR; var ulLength: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Register_Device_Interface_ExA = function(dnDevInst: DEVINST;
|
|
InterfaceClassGuid: PGUID;
|
|
const pszReference: PAnsiChar; // OPTIONAL
|
|
pszDeviceInterface: PAnsiChar; var ulLength: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Register_Device_Interface_ExW = function(dnDevInst: DEVINST;
|
|
InterfaceClassGuid: PGUID;
|
|
const pszReference: PWideChar; // OPTIONAL
|
|
pszDeviceInterface: PWideChar; var ulLength: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Register_Device_Interface_Ex = function(dnDevInst: DEVINST;
|
|
InterfaceClassGuid: PGUID;
|
|
const pszReference: PTSTR; // OPTIONAL
|
|
pszDeviceInterface: PTSTR; var ulLength: ULONG;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Set_DevNode_Problem_Ex = function(dnDevInst: DEVINST;
|
|
ulProblem: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Set_DevInst_Problem_Ex = function(dnDevInst: DEVINST;
|
|
ulProblem: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Set_DevNode_Problem = function(dnDevInst: DEVINST; ulProblem: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Set_DevInst_Problem = function(dnDevInst: DEVINST; ulProblem: ULONG;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Unregister_Device_InterfaceA = function(const pszDeviceInterface: PAnsiChar;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Unregister_Device_InterfaceW = function(const pszDeviceInterface: PWideChar;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Unregister_Device_Interface = function(const pszDeviceInterface: PTSTR;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Unregister_Device_Interface_ExA = function(const pszDeviceInterface: PAnsiChar;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Unregister_Device_Interface_ExW = function(const pszDeviceInterface: PWideChar;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Unregister_Device_Interface_Ex = function(const pszDeviceInterface: PTSTR;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Register_Device_Driver = function(dnDevInst: DEVINST;
|
|
ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Register_Device_Driver_Ex = function(dnDevInst: DEVINST;
|
|
ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$ENDIF !WINNT4}
|
|
|
|
TCM_Remove_SubTree = function(dnAncestor: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Remove_SubTree_Ex = function(dnAncestor: DEVINST; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Set_DevNode_Registry_PropertyA = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Set_DevNode_Registry_PropertyW = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Set_DevNode_Registry_Property = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Set_DevNode_Registry_Property_ExA = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Set_DevNode_Registry_Property_ExW = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Set_DevNode_Registry_Property_Ex = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Set_DevInst_Registry_PropertyA = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Set_DevInst_Registry_PropertyW = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Set_DevInst_Registry_Property = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Set_DevInst_Registry_Property_ExA = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Set_DevInst_Registry_Property_ExW = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Set_DevInst_Registry_Property_Ex = function(dnDevInst: DEVINST;
|
|
ulProperty: ULONG; Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$IFNDEF WINNT4}
|
|
TCM_Is_Dock_Station_Present = function(var bPresent: BOOL): CONFIGRET; stdcall;
|
|
{$ENDIF !WINNT4}
|
|
|
|
{$IFDEF WIN2000_UP}
|
|
TCM_Is_Dock_Station_Present_Ex = function(var bPresent: BOOL;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
{$ENDIF WIN2000_UP}
|
|
|
|
{$IFNDEF WINNT4}
|
|
TCM_Request_Eject_PC = function: CONFIGRET; stdcall;
|
|
{$ENDIF !WINNT4}
|
|
|
|
{$IFDEF WIN2000_UP}
|
|
TCM_Request_Eject_PC_Ex = function(hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
{$ENDIF WIN2000_UP}
|
|
|
|
TCM_Set_HW_Prof_FlagsA = function(szDevInstName: DEVINSTID_A;
|
|
ulConfig: ULONG; ulValue: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Set_HW_Prof_FlagsW = function(szDevInstName: DEVINSTID_W;
|
|
ulConfig: ULONG; ulValue: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
TCM_Set_HW_Prof_Flags = function(szDevInstName: DEVINSTID;
|
|
ulConfig: ULONG; ulValue: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Set_HW_Prof_Flags_ExA = function(szDevInstName: DEVINSTID_A;
|
|
ulConfig: ULONG; ulValue: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Set_HW_Prof_Flags_ExW = function(szDevInstName: DEVINSTID_W;
|
|
ulConfig: ULONG; ulValue: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Set_HW_Prof_Flags_Ex = function(szDevInstName: DEVINSTID;
|
|
ulConfig: ULONG; ulValue: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Setup_DevNode = function(dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Setup_DevInst = function(dnDevInst: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Setup_DevNode_Ex = function(dnDevInst: DEVINST; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Setup_DevInst_Ex = function(dnDevInst: DEVINST; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Test_Range_Available = function(ullStartValue: DWORDLONG; ullEndValue: DWORDLONG;
|
|
rlh: RANGE_LIST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Uninstall_DevNode = function(dnPhantom: DEVNODE; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Uninstall_DevInst = function(dnPhantom: DEVINST; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Uninstall_DevNode_Ex = function(dnPhantom: DEVNODE; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Uninstall_DevInst_Ex = function(dnPhantom: DEVINST; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Run_Detection = function(ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Run_Detection_Ex = function(ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Set_HW_Prof = function(ulHardwareProfile: ULONG; ulFlags: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Set_HW_Prof_Ex = function(ulHardwareProfile: ULONG; ulFlags: ULONG;
|
|
hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
{$IFDEF WIN2000_UP}
|
|
|
|
TCM_Query_Resource_Conflict_List = function(var clConflictList: CONFLICT_LIST;
|
|
dnDevInst: DEVINST; ResourceID: RESOURCEID; ResourceData: Pointer;
|
|
ResourceLen: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Free_Resource_Conflict_Handle = function(clConflictList: CONFLICT_LIST): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Resource_Conflict_Count = function(clConflictList: CONFLICT_LIST;
|
|
var ulCount: ULONG): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Resource_Conflict_DetailsA = function(clConflictList: CONFLICT_LIST;
|
|
ulIndex: ULONG; var ConflictDetails: CONFLICT_DETAILS_A): CONFIGRET; stdcall;
|
|
TCM_Get_Resource_Conflict_DetailsW = function(clConflictList: CONFLICT_LIST;
|
|
ulIndex: ULONG; var ConflictDetails: CONFLICT_DETAILS_W): CONFIGRET; stdcall;
|
|
TCM_Get_Resource_Conflict_Details = function(clConflictList: CONFLICT_LIST;
|
|
ulIndex: ULONG; var ConflictDetails: CONFLICT_DETAILS): CONFIGRET; stdcall;
|
|
|
|
TCM_Get_Class_Registry_PropertyA = function(ClassGUID: PGUID; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Class_Registry_PropertyW = function(ClassGUID: PGUID; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Get_Class_Registry_Property = function(ClassGUID: PGUID; ulProperty: ULONG;
|
|
pulRegDataType: PULONG; // OPTIONAL
|
|
Buffer: Pointer; // OPTIONAL
|
|
var ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_Set_Class_Registry_PropertyA = function(ClassGUID: PGUID; ulProperty: ULONG;
|
|
Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Set_Class_Registry_PropertyW = function(ClassGUID: PGUID; ulProperty: ULONG;
|
|
Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
TCM_Set_Class_Registry_Property = function(ClassGUID: PGUID; ulProperty: ULONG;
|
|
Buffer: Pointer; // OPTIONAL
|
|
ulLength: ULONG; ulFlags: ULONG; hMachine: HMACHINE): CONFIGRET; stdcall;
|
|
|
|
TCM_WaitNoPendingInstallEvents = function(dwTimeout: DWORD): DWORD; stdcall;
|
|
TCMP_WaitNoPendingInstallEvents = function(dwTimeout: DWORD): DWORD; stdcall;
|
|
|
|
{$ENDIF WIN2000_UP}
|
|
|
|
var
|
|
CM_Add_Empty_Log_Conf: TCM_Add_Empty_Log_Conf;
|
|
CM_Add_Empty_Log_Conf_Ex: TCM_Add_Empty_Log_Conf_Ex;
|
|
CM_Add_IDA: TCM_Add_IDA;
|
|
CM_Add_IDW: TCM_Add_IDW;
|
|
CM_Add_ID: TCM_Add_ID;
|
|
CM_Add_ID_ExA: TCM_Add_ID_ExA;
|
|
CM_Add_ID_ExW: TCM_Add_ID_ExW;
|
|
CM_Add_ID_Ex: TCM_Add_ID_Ex;
|
|
CM_Add_Range: TCM_Add_Range;
|
|
CM_Add_Res_Des: TCM_Add_Res_Des;
|
|
CM_Add_Res_Des_Ex: TCM_Add_Res_Des_Ex;
|
|
CM_Connect_MachineA: TCM_Connect_MachineA;
|
|
CM_Connect_MachineW: TCM_Connect_MachineW;
|
|
CM_Connect_Machine: TCM_Connect_Machine;
|
|
CM_Create_DevNodeA: TCM_Create_DevNodeA;
|
|
CM_Create_DevNodeW: TCM_Create_DevNodeW;
|
|
CM_Create_DevNode: TCM_Create_DevNode;
|
|
CM_Create_DevNode_ExA: TCM_Create_DevNode_ExA;
|
|
CM_Create_DevNode_ExW: TCM_Create_DevNode_ExW;
|
|
CM_Create_DevNode_Ex: TCM_Create_DevNode_Ex;
|
|
CM_Create_DevInstA: TCM_Create_DevInstA;
|
|
CM_Create_DevInstW: TCM_Create_DevInstW;
|
|
CM_Create_DevInst: TCM_Create_DevInst;
|
|
CM_Create_DevInst_ExA: TCM_Create_DevInst_ExA;
|
|
CM_Create_DevInst_ExW: TCM_Create_DevInst_ExW;
|
|
CM_Create_DevInst_Ex: TCM_Create_DevInst_Ex;
|
|
CM_Create_Range_List: TCM_Create_Range_List;
|
|
CM_Delete_Class_Key: TCM_Delete_Class_Key;
|
|
CM_Delete_Class_Key_Ex: TCM_Delete_Class_Key_Ex;
|
|
CM_Delete_DevNode_Key: TCM_Delete_DevNode_Key;
|
|
CM_Delete_DevNode_Key_Ex: TCM_Delete_DevNode_Key_Ex;
|
|
CM_Delete_DevInst_Key: TCM_Delete_DevInst_Key;
|
|
CM_Delete_DevInst_Key_Ex: TCM_Delete_DevInst_Key_Ex;
|
|
CM_Delete_Range: TCM_Delete_Range;
|
|
CM_Detect_Resource_Conflict: TCM_Detect_Resource_Conflict;
|
|
CM_Detect_Resource_Conflict_Ex: TCM_Detect_Resource_Conflict_Ex;
|
|
CM_Disable_DevNode: TCM_Disable_DevNode;
|
|
CM_Disable_DevNode_Ex: TCM_Disable_DevNode_Ex;
|
|
CM_Disable_DevInst: TCM_Disable_DevInst;
|
|
CM_Disable_DevInst_Ex: TCM_Disable_DevInst_Ex;
|
|
CM_Disconnect_Machine: TCM_Disconnect_Machine;
|
|
CM_Dup_Range_List: TCM_Dup_Range_List;
|
|
CM_Enable_DevNode: TCM_Enable_DevNode;
|
|
CM_Enable_DevNode_Ex: TCM_Enable_DevNode_Ex;
|
|
CM_Enable_DevInst: TCM_Enable_DevInst;
|
|
CM_Enable_DevInst_Ex: TCM_Enable_DevInst_Ex;
|
|
CM_Enumerate_Classes: TCM_Enumerate_Classes;
|
|
CM_Enumerate_Classes_Ex: TCM_Enumerate_Classes_Ex;
|
|
CM_Enumerate_EnumeratorsA: TCM_Enumerate_EnumeratorsA;
|
|
CM_Enumerate_EnumeratorsW: TCM_Enumerate_EnumeratorsW;
|
|
CM_Enumerate_Enumerators: TCM_Enumerate_Enumerators;
|
|
CM_Enumerate_Enumerators_ExA: TCM_Enumerate_Enumerators_ExA;
|
|
CM_Enumerate_Enumerators_ExW: TCM_Enumerate_Enumerators_ExW;
|
|
CM_Enumerate_Enumerators_Ex: TCM_Enumerate_Enumerators_Ex;
|
|
CM_Find_Range: TCM_Find_Range;
|
|
CM_First_Range: TCM_First_Range;
|
|
CM_Free_Log_Conf: TCM_Free_Log_Conf;
|
|
CM_Free_Log_Conf_Ex: TCM_Free_Log_Conf_Ex;
|
|
CM_Free_Log_Conf_Handle: TCM_Free_Log_Conf_Handle;
|
|
CM_Free_Range_List: TCM_Free_Range_List;
|
|
CM_Free_Res_Des: TCM_Free_Res_Des;
|
|
CM_Free_Res_Des_Ex: TCM_Free_Res_Des_Ex;
|
|
CM_Free_Res_Des_Handle: TCM_Free_Res_Des_Handle;
|
|
CM_Get_Child: TCM_Get_Child;
|
|
CM_Get_Child_Ex: TCM_Get_Child_Ex;
|
|
CM_Get_Class_NameA: TCM_Get_Class_NameA;
|
|
CM_Get_Class_NameW: TCM_Get_Class_NameW;
|
|
CM_Get_Class_Name: TCM_Get_Class_Name;
|
|
CM_Get_Class_Name_ExA: TCM_Get_Class_Name_ExA;
|
|
CM_Get_Class_Name_ExW: TCM_Get_Class_Name_ExW;
|
|
CM_Get_Class_Name_Ex: TCM_Get_Class_Name_Ex;
|
|
CM_Get_Class_Key_NameA: TCM_Get_Class_Key_NameA;
|
|
CM_Get_Class_Key_NameW: TCM_Get_Class_Key_NameW;
|
|
CM_Get_Class_Key_Name: TCM_Get_Class_Key_Name;
|
|
CM_Get_Class_Key_Name_ExA: TCM_Get_Class_Key_Name_ExA;
|
|
CM_Get_Class_Key_Name_ExW: TCM_Get_Class_Key_Name_ExW;
|
|
CM_Get_Class_Key_Name_Ex: TCM_Get_Class_Key_Name_Ex;
|
|
CM_Get_Depth: TCM_Get_Depth;
|
|
CM_Get_Depth_Ex: TCM_Get_Depth_Ex;
|
|
CM_Get_Device_IDA: TCM_Get_Device_IDA;
|
|
CM_Get_Device_IDW: TCM_Get_Device_IDW;
|
|
CM_Get_Device_ID: TCM_Get_Device_ID;
|
|
CM_Get_Device_ID_ExA: TCM_Get_Device_ID_ExA;
|
|
CM_Get_Device_ID_ExW: TCM_Get_Device_ID_ExW;
|
|
CM_Get_Device_ID_Ex: TCM_Get_Device_ID_Ex;
|
|
CM_Get_Device_ID_ListA: TCM_Get_Device_ID_ListA;
|
|
CM_Get_Device_ID_ListW: TCM_Get_Device_ID_ListW;
|
|
CM_Get_Device_ID_List: TCM_Get_Device_ID_List;
|
|
CM_Get_Device_ID_List_ExA: TCM_Get_Device_ID_List_ExA;
|
|
CM_Get_Device_ID_List_ExW: TCM_Get_Device_ID_List_ExW;
|
|
CM_Get_Device_ID_List_Ex: TCM_Get_Device_ID_List_Ex;
|
|
CM_Get_Device_ID_List_SizeA: TCM_Get_Device_ID_List_SizeA;
|
|
CM_Get_Device_ID_List_SizeW: TCM_Get_Device_ID_List_SizeW;
|
|
CM_Get_Device_ID_List_Size: TCM_Get_Device_ID_List_Size;
|
|
CM_Get_Device_ID_List_Size_ExA: TCM_Get_Device_ID_List_Size_ExA;
|
|
CM_Get_Device_ID_List_Size_ExW: TCM_Get_Device_ID_List_Size_ExW;
|
|
CM_Get_Device_ID_List_Size_Ex: TCM_Get_Device_ID_List_Size_Ex;
|
|
CM_Get_Device_ID_Size: TCM_Get_Device_ID_Size;
|
|
CM_Get_Device_ID_Size_Ex: TCM_Get_Device_ID_Size_Ex;
|
|
CM_Get_DevNode_Registry_PropertyA: TCM_Get_DevNode_Registry_PropertyA;
|
|
CM_Get_DevNode_Registry_PropertyW: TCM_Get_DevNode_Registry_PropertyW;
|
|
CM_Get_DevNode_Registry_Property: TCM_Get_DevNode_Registry_Property;
|
|
CM_Get_DevNode_Registry_Property_ExA: TCM_Get_DevNode_Registry_Property_ExA;
|
|
CM_Get_DevNode_Registry_Property_ExW: TCM_Get_DevNode_Registry_Property_ExW;
|
|
CM_Get_DevNode_Registry_Property_Ex: TCM_Get_DevNode_Registry_Property_Ex;
|
|
CM_Get_DevInst_Registry_PropertyA: TCM_Get_DevInst_Registry_PropertyA;
|
|
CM_Get_DevInst_Registry_PropertyW: TCM_Get_DevInst_Registry_PropertyW;
|
|
CM_Get_DevInst_Registry_Property: TCM_Get_DevInst_Registry_Property;
|
|
CM_Get_DevInst_Registry_Property_ExA: TCM_Get_DevInst_Registry_Property_ExA;
|
|
CM_Get_DevInst_Registry_Property_ExW: TCM_Get_DevInst_Registry_Property_ExW;
|
|
CM_Get_DevInst_Registry_Property_Ex: TCM_Get_DevInst_Registry_Property_Ex;
|
|
{$IFDEF WINXP_UP}
|
|
CM_Get_DevNode_Custom_PropertyA: TCM_Get_DevNode_Custom_PropertyA;
|
|
CM_Get_DevNode_Custom_PropertyW: TCM_Get_DevNode_Custom_PropertyW;
|
|
CM_Get_DevNode_Custom_Property: TCM_Get_DevNode_Custom_Property;
|
|
CM_Get_DevNode_Custom_Property_ExA: TCM_Get_DevNode_Custom_Property_ExA;
|
|
CM_Get_DevNode_Custom_Property_ExW: TCM_Get_DevNode_Custom_Property_ExW;
|
|
CM_Get_DevNode_Custom_Property_Ex: TCM_Get_DevNode_Custom_Property_Ex;
|
|
CM_Get_DevInst_Custom_PropertyA: TCM_Get_DevInst_Custom_PropertyA;
|
|
CM_Get_DevInst_Custom_PropertyW: TCM_Get_DevInst_Custom_PropertyW;
|
|
CM_Get_DevInst_Custom_Property: TCM_Get_DevInst_Custom_Property;
|
|
CM_Get_DevInst_Custom_Property_ExA: TCM_Get_DevInst_Custom_Property_ExA;
|
|
CM_Get_DevInst_Custom_Property_ExW: TCM_Get_DevInst_Custom_Property_ExW;
|
|
CM_Get_DevInst_Custom_Property_Ex: TCM_Get_DevInst_Custom_Property_Ex;
|
|
{$ENDIF WINXP_UP}
|
|
CM_Get_DevNode_Status: TCM_Get_DevNode_Status;
|
|
CM_Get_DevInst_Status: TCM_Get_DevInst_Status;
|
|
CM_Get_DevNode_Status_Ex: TCM_Get_DevNode_Status_Ex;
|
|
CM_Get_DevInst_Status_Ex: TCM_Get_DevInst_Status_Ex;
|
|
CM_Get_First_Log_Conf: TCM_Get_First_Log_Conf;
|
|
CM_Get_First_Log_Conf_Ex: TCM_Get_First_Log_Conf_Ex;
|
|
CM_Get_Global_State: TCM_Get_Global_State;
|
|
CM_Get_Global_State_Ex: TCM_Get_Global_State_Ex;
|
|
CM_Get_Hardware_Profile_InfoA: TCM_Get_Hardware_Profile_InfoA;
|
|
CM_Get_Hardware_Profile_InfoW: TCM_Get_Hardware_Profile_InfoW;
|
|
CM_Get_Hardware_Profile_Info: TCM_Get_Hardware_Profile_Info;
|
|
CM_Get_Hardware_Profile_Info_ExA: TCM_Get_Hardware_Profile_Info_ExA;
|
|
CM_Get_Hardware_Profile_Info_ExW: TCM_Get_Hardware_Profile_Info_ExW;
|
|
CM_Get_Hardware_Profile_Info_Ex: TCM_Get_Hardware_Profile_Info_Ex;
|
|
CM_Get_HW_Prof_FlagsA: TCM_Get_HW_Prof_FlagsA;
|
|
CM_Get_HW_Prof_FlagsW: TCM_Get_HW_Prof_FlagsW;
|
|
CM_Get_HW_Prof_Flags: TCM_Get_HW_Prof_Flags;
|
|
CM_Get_HW_Prof_Flags_ExA: TCM_Get_HW_Prof_Flags_ExA;
|
|
CM_Get_HW_Prof_Flags_ExW: TCM_Get_HW_Prof_Flags_ExW;
|
|
CM_Get_HW_Prof_Flags_Ex: TCM_Get_HW_Prof_Flags_Ex;
|
|
{$IFNDEF WINNT4}
|
|
CM_Get_Device_Interface_AliasA: TCM_Get_Device_Interface_AliasA;
|
|
CM_Get_Device_Interface_AliasW: TCM_Get_Device_Interface_AliasW;
|
|
CM_Get_Device_Interface_Alias: TCM_Get_Device_Interface_Alias;
|
|
CM_Get_Device_Interface_Alias_ExA: TCM_Get_Device_Interface_Alias_ExA;
|
|
CM_Get_Device_Interface_Alias_ExW: TCM_Get_Device_Interface_Alias_ExW;
|
|
CM_Get_Device_Interface_Alias_Ex: TCM_Get_Device_Interface_Alias_Ex;
|
|
CM_Get_Device_Interface_ListA: TCM_Get_Device_Interface_ListA;
|
|
CM_Get_Device_Interface_ListW: TCM_Get_Device_Interface_ListW;
|
|
CM_Get_Device_Interface_List: TCM_Get_Device_Interface_List;
|
|
CM_Get_Device_Interface_List_ExA: TCM_Get_Device_Interface_List_ExA;
|
|
CM_Get_Device_Interface_List_ExW: TCM_Get_Device_Interface_List_ExW;
|
|
CM_Get_Device_Interface_List_Ex: TCM_Get_Device_Interface_List_Ex;
|
|
CM_Get_Device_Interface_List_SizeA: TCM_Get_Device_Interface_List_SizeA;
|
|
CM_Get_Device_Interface_List_SizeW: TCM_Get_Device_Interface_List_SizeW;
|
|
CM_Get_Device_Interface_List_Size: TCM_Get_Device_Interface_List_Size;
|
|
CM_Get_Device_Interface_List_Size_ExA: TCM_Get_Device_Interface_List_Size_ExA;
|
|
CM_Get_Device_Interface_List_Size_ExW: TCM_Get_Device_Interface_List_Size_ExW;
|
|
CM_Get_Device_Interface_List_Size_Ex: TCM_Get_Device_Interface_List_Size_Ex;
|
|
CM_Get_Log_Conf_Priority: TCM_Get_Log_Conf_Priority;
|
|
CM_Get_Log_Conf_Priority_Ex: TCM_Get_Log_Conf_Priority_Ex;
|
|
{$ENDIF !WINNT4}
|
|
CM_Get_Next_Log_Conf: TCM_Get_Next_Log_Conf;
|
|
CM_Get_Next_Log_Conf_Ex: TCM_Get_Next_Log_Conf_Ex;
|
|
CM_Get_Parent: TCM_Get_Parent;
|
|
CM_Get_Parent_Ex: TCM_Get_Parent_Ex;
|
|
CM_Get_Res_Des_Data: TCM_Get_Res_Des_Data;
|
|
CM_Get_Res_Des_Data_Ex: TCM_Get_Res_Des_Data_Ex;
|
|
CM_Get_Res_Des_Data_Size: TCM_Get_Res_Des_Data_Size;
|
|
CM_Get_Res_Des_Data_Size_Ex: TCM_Get_Res_Des_Data_Size_Ex;
|
|
CM_Get_Sibling: TCM_Get_Sibling;
|
|
CM_Get_Sibling_Ex: TCM_Get_Sibling_Ex;
|
|
CM_Get_Version: TCM_Get_Version;
|
|
CM_Get_Version_Ex: TCM_Get_Version_Ex;
|
|
{$IFDEF WINXP_UP}
|
|
CM_Is_Version_Available: TCM_Is_Version_Available;
|
|
CM_Is_Version_Available_Ex: TCM_Is_Version_Available_Ex;
|
|
{$ENDIF WINXP_UP}
|
|
CM_Intersect_Range_List: TCM_Intersect_Range_List;
|
|
CM_Invert_Range_List: TCM_Invert_Range_List;
|
|
CM_Locate_DevNodeA: TCM_Locate_DevNodeA;
|
|
CM_Locate_DevNodeW: TCM_Locate_DevNodeW;
|
|
CM_Locate_DevNode: TCM_Locate_DevNode;
|
|
CM_Locate_DevNode_ExA: TCM_Locate_DevNode_ExA;
|
|
CM_Locate_DevNode_ExW: TCM_Locate_DevNode_ExW;
|
|
CM_Locate_DevNode_Ex: TCM_Locate_DevNode_Ex;
|
|
CM_Locate_DevInstA: TCM_Locate_DevInstA;
|
|
CM_Locate_DevInstW: TCM_Locate_DevInstW;
|
|
CM_Locate_DevInst: TCM_Locate_DevInst;
|
|
CM_Locate_DevInst_ExA: TCM_Locate_DevInst_ExA;
|
|
CM_Locate_DevInst_ExW: TCM_Locate_DevInst_ExW;
|
|
CM_Locate_DevInst_Ex: TCM_Locate_DevInst_Ex;
|
|
CM_Merge_Range_List: TCM_Merge_Range_List;
|
|
CM_Modify_Res_Des: TCM_Modify_Res_Des;
|
|
CM_Modify_Res_Des_Ex: TCM_Modify_Res_Des_Ex;
|
|
CM_Move_DevNode: TCM_Move_DevNode;
|
|
CM_Move_DevInst: TCM_Move_DevInst;
|
|
CM_Move_DevNode_Ex: TCM_Move_DevNode_Ex;
|
|
CM_Move_DevInst_Ex: TCM_Move_DevInst_Ex;
|
|
CM_Next_Range: TCM_Next_Range;
|
|
CM_Get_Next_Res_Des: TCM_Get_Next_Res_Des;
|
|
CM_Get_Next_Res_Des_Ex: TCM_Get_Next_Res_Des_Ex;
|
|
CM_Open_Class_KeyA: TCM_Open_Class_KeyA;
|
|
CM_Open_Class_KeyW: TCM_Open_Class_KeyW;
|
|
CM_Open_Class_Key: TCM_Open_Class_Key;
|
|
CM_Open_Class_Key_ExA: TCM_Open_Class_Key_ExA;
|
|
CM_Open_Class_Key_ExW: TCM_Open_Class_Key_ExW;
|
|
CM_Open_Class_Key_Ex: TCM_Open_Class_Key_Ex;
|
|
CM_Open_DevNode_Key: TCM_Open_DevNode_Key;
|
|
CM_Open_DevInst_Key: TCM_Open_DevInst_Key;
|
|
CM_Open_DevNode_Key_Ex: TCM_Open_DevNode_Key_Ex;
|
|
CM_Open_DevInst_Key_Ex: TCM_Open_DevInst_Key_Ex;
|
|
CM_Query_Arbitrator_Free_Data: TCM_Query_Arbitrator_Free_Data;
|
|
CM_Query_Arbitrator_Free_Data_Ex: TCM_Query_Arbitrator_Free_Data_Ex;
|
|
CM_Query_Arbitrator_Free_Size: TCM_Query_Arbitrator_Free_Size;
|
|
CM_Query_Arbitrator_Free_Size_Ex: TCM_Query_Arbitrator_Free_Size_Ex;
|
|
CM_Query_Remove_SubTree: TCM_Query_Remove_SubTree;
|
|
CM_Query_Remove_SubTree_Ex: TCM_Query_Remove_SubTree_Ex;
|
|
{$IFDEF WIN2000_UP}
|
|
CM_Query_And_Remove_SubTreeA: TCM_Query_And_Remove_SubTreeA;
|
|
CM_Query_And_Remove_SubTreeW: TCM_Query_And_Remove_SubTreeW;
|
|
CM_Query_And_Remove_SubTree: TCM_Query_And_Remove_SubTree;
|
|
CM_Query_And_Remove_SubTree_ExA: TCM_Query_And_Remove_SubTree_ExA;
|
|
CM_Query_And_Remove_SubTree_ExW: TCM_Query_And_Remove_SubTree_ExW;
|
|
CM_Query_And_Remove_SubTree_Ex: TCM_Query_And_Remove_SubTree_Ex;
|
|
CM_Request_Device_EjectA: TCM_Request_Device_EjectA;
|
|
CM_Request_Device_EjectW: TCM_Request_Device_EjectW;
|
|
CM_Request_Device_Eject: TCM_Request_Device_Eject;
|
|
CM_Request_Device_Eject_ExA: TCM_Request_Device_Eject_ExA;
|
|
CM_Request_Device_Eject_ExW: TCM_Request_Device_Eject_ExW;
|
|
CM_Request_Device_Eject_Ex: TCM_Request_Device_Eject_Ex;
|
|
{$ENDIF WIN2000_UP}
|
|
CM_Reenumerate_DevNode: TCM_Reenumerate_DevNode;
|
|
CM_Reenumerate_DevInst: TCM_Reenumerate_DevInst;
|
|
CM_Reenumerate_DevNode_Ex: TCM_Reenumerate_DevNode_Ex;
|
|
CM_Reenumerate_DevInst_Ex: TCM_Reenumerate_DevInst_Ex;
|
|
{$IFNDEF WINNT4}
|
|
CM_Register_Device_InterfaceA: TCM_Register_Device_InterfaceA;
|
|
CM_Register_Device_InterfaceW: TCM_Register_Device_InterfaceW;
|
|
CM_Register_Device_Interface: TCM_Register_Device_Interface;
|
|
CM_Register_Device_Interface_ExA: TCM_Register_Device_Interface_ExA;
|
|
CM_Register_Device_Interface_ExW: TCM_Register_Device_Interface_ExW;
|
|
CM_Register_Device_Interface_Ex: TCM_Register_Device_Interface_Ex;
|
|
CM_Set_DevNode_Problem_Ex: TCM_Set_DevNode_Problem_Ex;
|
|
CM_Set_DevInst_Problem_Ex: TCM_Set_DevInst_Problem_Ex;
|
|
CM_Set_DevNode_Problem: TCM_Set_DevNode_Problem;
|
|
CM_Set_DevInst_Problem: TCM_Set_DevInst_Problem;
|
|
CM_Unregister_Device_InterfaceA: TCM_Unregister_Device_InterfaceA;
|
|
CM_Unregister_Device_InterfaceW: TCM_Unregister_Device_InterfaceW;
|
|
CM_Unregister_Device_Interface: TCM_Unregister_Device_Interface;
|
|
CM_Unregister_Device_Interface_ExA: TCM_Unregister_Device_Interface_ExA;
|
|
CM_Unregister_Device_Interface_ExW: TCM_Unregister_Device_Interface_ExW;
|
|
CM_Unregister_Device_Interface_Ex: TCM_Unregister_Device_Interface_Ex;
|
|
CM_Register_Device_Driver: TCM_Register_Device_Driver;
|
|
CM_Register_Device_Driver_Ex: TCM_Register_Device_Driver_Ex;
|
|
{$ENDIF !WINNT4}
|
|
CM_Remove_SubTree: TCM_Remove_SubTree;
|
|
CM_Remove_SubTree_Ex: TCM_Remove_SubTree_Ex;
|
|
CM_Set_DevNode_Registry_PropertyA: TCM_Set_DevNode_Registry_PropertyA;
|
|
CM_Set_DevNode_Registry_PropertyW: TCM_Set_DevNode_Registry_PropertyW;
|
|
CM_Set_DevNode_Registry_Property: TCM_Set_DevNode_Registry_Property;
|
|
CM_Set_DevNode_Registry_Property_ExA: TCM_Set_DevNode_Registry_Property_ExA;
|
|
CM_Set_DevNode_Registry_Property_ExW: TCM_Set_DevNode_Registry_Property_ExW;
|
|
CM_Set_DevNode_Registry_Property_Ex: TCM_Set_DevNode_Registry_Property_Ex;
|
|
CM_Set_DevInst_Registry_PropertyA: TCM_Set_DevInst_Registry_PropertyA;
|
|
CM_Set_DevInst_Registry_PropertyW: TCM_Set_DevInst_Registry_PropertyW;
|
|
CM_Set_DevInst_Registry_Property: TCM_Set_DevInst_Registry_Property;
|
|
CM_Set_DevInst_Registry_Property_ExA: TCM_Set_DevInst_Registry_Property_ExA;
|
|
CM_Set_DevInst_Registry_Property_ExW: TCM_Set_DevInst_Registry_Property_ExW;
|
|
CM_Set_DevInst_Registry_Property_Ex: TCM_Set_DevInst_Registry_Property_Ex;
|
|
{$IFNDEF WINNT4}
|
|
CM_Is_Dock_Station_Present: TCM_Is_Dock_Station_Present;
|
|
{$ENDIF !WINNT4}
|
|
{$IFDEF WIN2000_UP}
|
|
CM_Is_Dock_Station_Present_Ex: TCM_Is_Dock_Station_Present_Ex;
|
|
{$ENDIF WIN2000_UP}
|
|
{$IFNDEF WINNT4}
|
|
CM_Request_Eject_PC: TCM_Request_Eject_PC;
|
|
{$ENDIF !WINNT4}
|
|
{$IFDEF WIN2000_UP}
|
|
CM_Request_Eject_PC_Ex: TCM_Request_Eject_PC_Ex;
|
|
{$ENDIF WIN2000_UP}
|
|
CM_Set_HW_Prof_FlagsA: TCM_Set_HW_Prof_FlagsA;
|
|
CM_Set_HW_Prof_FlagsW: TCM_Set_HW_Prof_FlagsW;
|
|
CM_Set_HW_Prof_Flags: TCM_Set_HW_Prof_Flags;
|
|
CM_Set_HW_Prof_Flags_ExA: TCM_Set_HW_Prof_Flags_ExA;
|
|
CM_Set_HW_Prof_Flags_ExW: TCM_Set_HW_Prof_Flags_ExW;
|
|
CM_Set_HW_Prof_Flags_Ex: TCM_Set_HW_Prof_Flags_Ex;
|
|
CM_Setup_DevNode: TCM_Setup_DevNode;
|
|
CM_Setup_DevInst: TCM_Setup_DevInst;
|
|
CM_Setup_DevNode_Ex: TCM_Setup_DevNode_Ex;
|
|
CM_Setup_DevInst_Ex: TCM_Setup_DevInst_Ex;
|
|
CM_Test_Range_Available: TCM_Test_Range_Available;
|
|
CM_Uninstall_DevNode: TCM_Uninstall_DevNode;
|
|
CM_Uninstall_DevInst: TCM_Uninstall_DevInst;
|
|
CM_Uninstall_DevNode_Ex: TCM_Uninstall_DevNode_Ex;
|
|
CM_Uninstall_DevInst_Ex: TCM_Uninstall_DevInst_Ex;
|
|
CM_Run_Detection: TCM_Run_Detection;
|
|
CM_Run_Detection_Ex: TCM_Run_Detection_Ex;
|
|
CM_Set_HW_Prof: TCM_Set_HW_Prof;
|
|
CM_Set_HW_Prof_Ex: TCM_Set_HW_Prof_Ex;
|
|
{$IFDEF WIN2000_UP}
|
|
CM_Query_Resource_Conflict_List: TCM_Query_Resource_Conflict_List;
|
|
CM_Free_Resource_Conflict_Handle: TCM_Free_Resource_Conflict_Handle;
|
|
CM_Get_Resource_Conflict_Count: TCM_Get_Resource_Conflict_Count;
|
|
CM_Get_Resource_Conflict_DetailsA: TCM_Get_Resource_Conflict_DetailsA;
|
|
CM_Get_Resource_Conflict_DetailsW: TCM_Get_Resource_Conflict_DetailsW;
|
|
CM_Get_Resource_Conflict_Details: TCM_Get_Resource_Conflict_Details;
|
|
CM_Get_Class_Registry_PropertyA: TCM_Get_Class_Registry_PropertyA;
|
|
CM_Get_Class_Registry_PropertyW: TCM_Get_Class_Registry_PropertyW;
|
|
CM_Get_Class_Registry_Property: TCM_Get_Class_Registry_Property;
|
|
CM_Set_Class_Registry_PropertyA: TCM_Set_Class_Registry_PropertyA;
|
|
CM_Set_Class_Registry_PropertyW: TCM_Set_Class_Registry_PropertyW;
|
|
CM_Set_Class_Registry_Property: TCM_Set_Class_Registry_Property;
|
|
CM_WaitNoPendingInstallEvents: TCM_WaitNoPendingInstallEvents;
|
|
CMP_WaitNoPendingInstallEvents: TCMP_WaitNoPendingInstallEvents;
|
|
{$ENDIF WIN2000_UP}
|
|
|
|
{$ENDIF !CFGMGR32_LINKONREQUEST}
|
|
|
|
//--------------------------------------------------------------
|
|
// Configuration Manager return status codes
|
|
//--------------------------------------------------------------
|
|
|
|
const
|
|
CR_SUCCESS = $00000000;
|
|
{$EXTERNALSYM CR_SUCCESS}
|
|
CR_DEFAULT = $00000001;
|
|
{$EXTERNALSYM CR_DEFAULT}
|
|
CR_OUT_OF_MEMORY = $00000002;
|
|
{$EXTERNALSYM CR_OUT_OF_MEMORY}
|
|
CR_INVALID_POINTER = $00000003;
|
|
{$EXTERNALSYM CR_INVALID_POINTER}
|
|
CR_INVALID_FLAG = $00000004;
|
|
{$EXTERNALSYM CR_INVALID_FLAG}
|
|
CR_INVALID_DEVNODE = $00000005;
|
|
{$EXTERNALSYM CR_INVALID_DEVNODE}
|
|
CR_INVALID_DEVINST = CR_INVALID_DEVNODE;
|
|
{$EXTERNALSYM CR_INVALID_DEVINST}
|
|
CR_INVALID_RES_DES = $00000006;
|
|
{$EXTERNALSYM CR_INVALID_RES_DES}
|
|
CR_INVALID_LOG_CONF = $00000007;
|
|
{$EXTERNALSYM CR_INVALID_LOG_CONF}
|
|
CR_INVALID_ARBITRATOR = $00000008;
|
|
{$EXTERNALSYM CR_INVALID_ARBITRATOR}
|
|
CR_INVALID_NODELIST = $00000009;
|
|
{$EXTERNALSYM CR_INVALID_NODELIST}
|
|
CR_DEVNODE_HAS_REQS = $0000000A;
|
|
{$EXTERNALSYM CR_DEVNODE_HAS_REQS}
|
|
CR_DEVINST_HAS_REQS = CR_DEVNODE_HAS_REQS;
|
|
{$EXTERNALSYM CR_DEVINST_HAS_REQS}
|
|
CR_INVALID_RESOURCEID = $0000000B;
|
|
{$EXTERNALSYM CR_INVALID_RESOURCEID}
|
|
CR_DLVXD_NOT_FOUND = $0000000C; // WIN 95 ONLY
|
|
{$EXTERNALSYM CR_DLVXD_NOT_FOUND}
|
|
CR_NO_SUCH_DEVNODE = $0000000D;
|
|
{$EXTERNALSYM CR_NO_SUCH_DEVNODE}
|
|
CR_NO_SUCH_DEVINST = CR_NO_SUCH_DEVNODE;
|
|
{$EXTERNALSYM CR_NO_SUCH_DEVINST}
|
|
CR_NO_MORE_LOG_CONF = $0000000E;
|
|
{$EXTERNALSYM CR_NO_MORE_LOG_CONF}
|
|
CR_NO_MORE_RES_DES = $0000000F;
|
|
{$EXTERNALSYM CR_NO_MORE_RES_DES}
|
|
CR_ALREADY_SUCH_DEVNODE = $00000010;
|
|
{$EXTERNALSYM CR_ALREADY_SUCH_DEVNODE}
|
|
CR_ALREADY_SUCH_DEVINST = CR_ALREADY_SUCH_DEVNODE;
|
|
{$EXTERNALSYM CR_ALREADY_SUCH_DEVINST}
|
|
CR_INVALID_RANGE_LIST = $00000011;
|
|
{$EXTERNALSYM CR_INVALID_RANGE_LIST}
|
|
CR_INVALID_RANGE = $00000012;
|
|
{$EXTERNALSYM CR_INVALID_RANGE}
|
|
CR_FAILURE = $00000013;
|
|
{$EXTERNALSYM CR_FAILURE}
|
|
CR_NO_SUCH_LOGICAL_DEV = $00000014;
|
|
{$EXTERNALSYM CR_NO_SUCH_LOGICAL_DEV}
|
|
CR_CREATE_BLOCKED = $00000015;
|
|
{$EXTERNALSYM CR_CREATE_BLOCKED}
|
|
CR_NOT_SYSTEM_VM = $00000016; // WIN 95 ONLY
|
|
{$EXTERNALSYM CR_NOT_SYSTEM_VM}
|
|
CR_REMOVE_VETOED = $00000017;
|
|
{$EXTERNALSYM CR_REMOVE_VETOED}
|
|
CR_APM_VETOED = $00000018;
|
|
{$EXTERNALSYM CR_APM_VETOED}
|
|
CR_INVALID_LOAD_TYPE = $00000019;
|
|
{$EXTERNALSYM CR_INVALID_LOAD_TYPE}
|
|
CR_BUFFER_SMALL = $0000001A;
|
|
{$EXTERNALSYM CR_BUFFER_SMALL}
|
|
CR_NO_ARBITRATOR = $0000001B;
|
|
{$EXTERNALSYM CR_NO_ARBITRATOR}
|
|
CR_NO_REGISTRY_HANDLE = $0000001C;
|
|
{$EXTERNALSYM CR_NO_REGISTRY_HANDLE}
|
|
CR_REGISTRY_ERROR = $0000001D;
|
|
{$EXTERNALSYM CR_REGISTRY_ERROR}
|
|
CR_INVALID_DEVICE_ID = $0000001E;
|
|
{$EXTERNALSYM CR_INVALID_DEVICE_ID}
|
|
CR_INVALID_DATA = $0000001F;
|
|
{$EXTERNALSYM CR_INVALID_DATA}
|
|
CR_INVALID_API = $00000020;
|
|
{$EXTERNALSYM CR_INVALID_API}
|
|
CR_DEVLOADER_NOT_READY = $00000021;
|
|
{$EXTERNALSYM CR_DEVLOADER_NOT_READY}
|
|
CR_NEED_RESTART = $00000022;
|
|
{$EXTERNALSYM CR_NEED_RESTART}
|
|
CR_NO_MORE_HW_PROFILES = $00000023;
|
|
{$EXTERNALSYM CR_NO_MORE_HW_PROFILES}
|
|
CR_DEVICE_NOT_THERE = $00000024;
|
|
{$EXTERNALSYM CR_DEVICE_NOT_THERE}
|
|
CR_NO_SUCH_VALUE = $00000025;
|
|
{$EXTERNALSYM CR_NO_SUCH_VALUE}
|
|
CR_WRONG_TYPE = $00000026;
|
|
{$EXTERNALSYM CR_WRONG_TYPE}
|
|
CR_INVALID_PRIORITY = $00000027;
|
|
{$EXTERNALSYM CR_INVALID_PRIORITY}
|
|
CR_NOT_DISABLEABLE = $00000028;
|
|
{$EXTERNALSYM CR_NOT_DISABLEABLE}
|
|
CR_FREE_RESOURCES = $00000029;
|
|
{$EXTERNALSYM CR_FREE_RESOURCES}
|
|
CR_QUERY_VETOED = $0000002A;
|
|
{$EXTERNALSYM CR_QUERY_VETOED}
|
|
CR_CANT_SHARE_IRQ = $0000002B;
|
|
{$EXTERNALSYM CR_CANT_SHARE_IRQ}
|
|
CR_NO_DEPENDENT = $0000002C;
|
|
{$EXTERNALSYM CR_NO_DEPENDENT}
|
|
CR_SAME_RESOURCES = $0000002D;
|
|
{$EXTERNALSYM CR_SAME_RESOURCES}
|
|
CR_NO_SUCH_REGISTRY_KEY = $0000002E;
|
|
{$EXTERNALSYM CR_NO_SUCH_REGISTRY_KEY}
|
|
CR_INVALID_MACHINENAME = $0000002F; // NT ONLY
|
|
{$EXTERNALSYM CR_INVALID_MACHINENAME}
|
|
CR_REMOTE_COMM_FAILURE = $00000030; // NT ONLY
|
|
{$EXTERNALSYM CR_REMOTE_COMM_FAILURE}
|
|
CR_MACHINE_UNAVAILABLE = $00000031; // NT ONLY
|
|
{$EXTERNALSYM CR_MACHINE_UNAVAILABLE}
|
|
CR_NO_CM_SERVICES = $00000032; // NT ONLY
|
|
{$EXTERNALSYM CR_NO_CM_SERVICES}
|
|
CR_ACCESS_DENIED = $00000033; // NT ONLY
|
|
{$EXTERNALSYM CR_ACCESS_DENIED}
|
|
CR_CALL_NOT_IMPLEMENTED = $00000034;
|
|
{$EXTERNALSYM CR_CALL_NOT_IMPLEMENTED}
|
|
CR_INVALID_PROPERTY = $00000035;
|
|
{$EXTERNALSYM CR_INVALID_PROPERTY}
|
|
CR_DEVICE_INTERFACE_ACTIVE = $00000036;
|
|
{$EXTERNALSYM CR_DEVICE_INTERFACE_ACTIVE}
|
|
CR_NO_SUCH_DEVICE_INTERFACE = $00000037;
|
|
{$EXTERNALSYM CR_NO_SUCH_DEVICE_INTERFACE}
|
|
CR_INVALID_REFERENCE_STRING = $00000038;
|
|
{$EXTERNALSYM CR_INVALID_REFERENCE_STRING}
|
|
CR_INVALID_CONFLICT_LIST = $00000039;
|
|
{$EXTERNALSYM CR_INVALID_CONFLICT_LIST}
|
|
CR_INVALID_INDEX = $0000003A;
|
|
{$EXTERNALSYM CR_INVALID_INDEX}
|
|
CR_INVALID_STRUCTURE_SIZE = $0000003B;
|
|
{$EXTERNALSYM CR_INVALID_STRUCTURE_SIZE}
|
|
NUM_CR_RESULTS = $0000003C;
|
|
{$EXTERNALSYM NUM_CR_RESULTS}
|
|
|
|
function IsConfigManagerApiLoaded: Boolean;
|
|
function LoadConfigManagerApi: Boolean;
|
|
procedure UnloadConfigManagerApi;
|
|
|
|
implementation
|
|
|
|
{$IFDEF CFGMGR32_LINKONREQUEST}
|
|
uses
|
|
ModuleLoader;
|
|
{$ENDIF CFGMGR32_LINKONREQUEST}
|
|
|
|
const
|
|
CfgMgrDllName = 'cfgmgr32.dll';
|
|
SetupApiDllName = 'SETUPAPI.DLL';
|
|
{$IFDEF UNICODE}
|
|
NameSuffix = 'W';
|
|
{$ELSE}
|
|
NameSuffix = 'A';
|
|
{$ENDIF UNICODE}
|
|
|
|
{$IFDEF CFGMGR32_LINKONREQUEST}
|
|
var
|
|
CfgMgrApiLib: TModuleHandle = INVALID_MODULEHANDLE_VALUE;
|
|
CfgMgrApiLoadCount: Integer = 0;
|
|
{$ENDIF CFGMGR32_LINKONREQUEST}
|
|
|
|
function IsConfigManagerApiLoaded: Boolean;
|
|
begin
|
|
{$IFDEF CFGMGR32_LINKONREQUEST}
|
|
Result := CfgMgrApiLib <> INVALID_MODULEHANDLE_VALUE;
|
|
{$ELSE}
|
|
Result := True;
|
|
{$ENDIF CFGMGR32_LINKONREQUEST}
|
|
end;
|
|
|
|
function LoadConfigManagerApi: Boolean;
|
|
begin
|
|
Result := LoadSetupApi;
|
|
if not Result then
|
|
Exit;
|
|
{$IFDEF CFGMGR32_LINKONREQUEST}
|
|
Inc(CfgMgrApiLoadCount);
|
|
if CfgMgrApiLoadCount > 1 then
|
|
Exit;
|
|
Result := LoadModule(CfgMgrApiLib, CfgMgrDllName);
|
|
if Result then
|
|
begin
|
|
@CM_Add_Empty_Log_Conf := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Add_Empty_Log_Conf', Result);
|
|
@CM_Add_Empty_Log_Conf_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Add_Empty_Log_Conf_Ex', Result);
|
|
@CM_Add_IDA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Add_IDA', Result);
|
|
@CM_Add_IDW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Add_IDW', Result);
|
|
@CM_Add_ID := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Add_ID' + NameSuffix, Result);
|
|
@CM_Add_ID_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Add_ID_ExA', Result);
|
|
@CM_Add_ID_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Add_ID_ExW', Result);
|
|
@CM_Add_ID_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Add_ID_Ex' + NameSuffix, Result);
|
|
@CM_Add_Range := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Add_Range', Result);
|
|
@CM_Add_Res_Des := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Add_Res_Des', Result);
|
|
@CM_Add_Res_Des_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Add_Res_Des_Ex', Result);
|
|
@CM_Connect_MachineA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Connect_MachineA', Result);
|
|
@CM_Connect_MachineW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Connect_MachineW', Result);
|
|
@CM_Connect_Machine := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Connect_Machine' + NameSuffix, Result);
|
|
@CM_Create_DevNodeA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_DevNodeA', Result);
|
|
@CM_Create_DevNodeW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_DevNodeW', Result);
|
|
@CM_Create_DevNode := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_DevNode' + NameSuffix, Result);
|
|
@CM_Create_DevNode_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_DevNode_ExA', Result);
|
|
@CM_Create_DevNode_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_DevNode_ExW', Result);
|
|
@CM_Create_DevNode_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_DevNode_Ex' + NameSuffix, Result);
|
|
@CM_Create_DevInstA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_DevNodeA', Result);
|
|
@CM_Create_DevInstW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_DevNodeW', Result);
|
|
@CM_Create_DevInst := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_DevNode' + NameSuffix, Result);
|
|
@CM_Create_DevInst_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_DevNode_ExA', Result);
|
|
@CM_Create_DevInst_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_DevNode_ExW', Result);
|
|
@CM_Create_DevInst_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_DevNode_Ex' + NameSuffix, Result);
|
|
@CM_Create_Range_List := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Create_Range_List', Result);
|
|
@CM_Delete_Class_Key := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Delete_Class_Key', Result);
|
|
@CM_Delete_Class_Key_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Delete_Class_Key_Ex', Result);
|
|
@CM_Delete_DevNode_Key := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Delete_DevNode_Key', Result);
|
|
@CM_Delete_DevNode_Key_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Delete_DevNode_Key_Ex', Result);
|
|
@CM_Delete_DevInst_Key := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Delete_DevNode_Key', Result);
|
|
@CM_Delete_DevInst_Key_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Delete_DevNode_Key_Ex', Result);
|
|
@CM_Delete_Range := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Delete_Range', Result);
|
|
@CM_Detect_Resource_Conflict := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Detect_Resource_Conflict', Result);
|
|
@CM_Detect_Resource_Conflict_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Detect_Resource_Conflict_Ex', Result);
|
|
@CM_Disable_DevNode := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Disable_DevNode', Result);
|
|
@CM_Disable_DevNode_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Disable_DevNode_Ex', Result);
|
|
@CM_Disable_DevInst := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Disable_DevNode', Result);
|
|
@CM_Disable_DevInst_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Disable_DevNode_Ex', Result);
|
|
@CM_Disconnect_Machine := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Disconnect_Machine', Result);
|
|
@CM_Dup_Range_List := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Dup_Range_List', Result);
|
|
@CM_Enable_DevNode := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Enable_DevNode', Result);
|
|
@CM_Enable_DevNode_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Enable_DevNode_Ex', Result);
|
|
@CM_Enable_DevInst := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Enable_DevNode', Result);
|
|
@CM_Enable_DevInst_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Enable_DevNode_Ex', Result);
|
|
@CM_Enumerate_Classes := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Enumerate_Classes', Result);
|
|
@CM_Enumerate_Classes_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Enumerate_Classes_Ex', Result);
|
|
@CM_Enumerate_EnumeratorsA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Enumerate_EnumeratorsA', Result);
|
|
@CM_Enumerate_EnumeratorsW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Enumerate_EnumeratorsW', Result);
|
|
@CM_Enumerate_Enumerators := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Enumerate_Enumerators' + NameSuffix, Result);
|
|
@CM_Enumerate_Enumerators_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Enumerate_Enumerators_ExA', Result);
|
|
@CM_Enumerate_Enumerators_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Enumerate_Enumerators_ExW', Result);
|
|
@CM_Enumerate_Enumerators_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Enumerate_Enumerators_Ex' + NameSuffix, Result);
|
|
@CM_Find_Range := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Find_Range', Result);
|
|
@CM_First_Range := GetModuleSymbolEx(CfgMgrApiLib, 'CM_First_Range', Result);
|
|
@CM_Free_Log_Conf := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Free_Log_Conf', Result);
|
|
@CM_Free_Log_Conf_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Free_Log_Conf_Ex', Result);
|
|
@CM_Free_Log_Conf_Handle := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Free_Log_Conf_Handle', Result);
|
|
@CM_Free_Range_List := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Free_Range_List', Result);
|
|
@CM_Free_Res_Des := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Free_Res_Des', Result);
|
|
@CM_Free_Res_Des_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Free_Res_Des_Ex', Result);
|
|
@CM_Free_Res_Des_Handle := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Free_Res_Des_Handle', Result);
|
|
@CM_Get_Child := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Child', Result);
|
|
@CM_Get_Child_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Child_Ex', Result);
|
|
@CM_Get_Class_NameA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_NameA', Result);
|
|
@CM_Get_Class_NameW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_NameW', Result);
|
|
@CM_Get_Class_Name := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Name' + NameSuffix, Result);
|
|
@CM_Get_Class_Name_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Name_ExA', Result);
|
|
@CM_Get_Class_Name_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Name_ExW', Result);
|
|
@CM_Get_Class_Name_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Name_Ex' + NameSuffix, Result);
|
|
@CM_Get_Class_Key_NameA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Key_NameA', Result);
|
|
@CM_Get_Class_Key_NameW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Key_NameW', Result);
|
|
@CM_Get_Class_Key_Name := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Key_Name' + NameSuffix, Result);
|
|
@CM_Get_Class_Key_Name_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Key_Name_ExA', Result);
|
|
@CM_Get_Class_Key_Name_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Key_Name_ExW', Result);
|
|
@CM_Get_Class_Key_Name_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Key_Name_Ex' + NameSuffix, Result);
|
|
@CM_Get_Depth := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Depth', Result);
|
|
@CM_Get_Depth_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Depth_Ex', Result);
|
|
@CM_Get_Device_IDA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_IDA', Result);
|
|
@CM_Get_Device_IDW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_IDW', Result);
|
|
@CM_Get_Device_ID := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID' + NameSuffix, Result);
|
|
@CM_Get_Device_ID_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_ExA', Result);
|
|
@CM_Get_Device_ID_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_ExW', Result);
|
|
@CM_Get_Device_ID_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_Ex' + NameSuffix, Result);
|
|
@CM_Get_Device_ID_ListA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_ListA', Result);
|
|
@CM_Get_Device_ID_ListW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_ListW', Result);
|
|
@CM_Get_Device_ID_List := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_List' + NameSuffix, Result);
|
|
@CM_Get_Device_ID_List_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_List_ExA', Result);
|
|
@CM_Get_Device_ID_List_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_List_ExW', Result);
|
|
@CM_Get_Device_ID_List_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_List_Ex' + NameSuffix, Result);
|
|
@CM_Get_Device_ID_List_SizeA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_List_SizeA', Result);
|
|
@CM_Get_Device_ID_List_SizeW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_List_SizeW', Result);
|
|
@CM_Get_Device_ID_List_Size := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_List_Size' + NameSuffix, Result);
|
|
@CM_Get_Device_ID_List_Size_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_List_Size_ExA', Result);
|
|
@CM_Get_Device_ID_List_Size_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_List_Size_ExW', Result);
|
|
@CM_Get_Device_ID_List_Size_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_List_Size_Ex' + NameSuffix, Result);
|
|
@CM_Get_Device_ID_Size := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_Size', Result);
|
|
@CM_Get_Device_ID_Size_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_ID_Size_Ex', Result);
|
|
@CM_Get_DevNode_Registry_PropertyA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Registry_PropertyA', Result);
|
|
@CM_Get_DevNode_Registry_PropertyW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Registry_PropertyW', Result);
|
|
@CM_Get_DevNode_Registry_Property := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Registry_Property' + NameSuffix, Result);
|
|
@CM_Get_DevNode_Registry_Property_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Registry_Property_ExA', Result);
|
|
@CM_Get_DevNode_Registry_Property_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Registry_Property_ExW', Result);
|
|
@CM_Get_DevNode_Registry_Property_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Registry_Property_Ex' + NameSuffix, Result);
|
|
@CM_Get_DevInst_Registry_PropertyA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Registry_PropertyA', Result);
|
|
@CM_Get_DevInst_Registry_PropertyW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Registry_PropertyW', Result);
|
|
@CM_Get_DevInst_Registry_Property := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Registry_Property' + NameSuffix, Result);
|
|
@CM_Get_DevInst_Registry_Property_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Registry_Property_ExA', Result);
|
|
@CM_Get_DevInst_Registry_Property_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Registry_Property_ExW', Result);
|
|
@CM_Get_DevInst_Registry_Property_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Registry_Property_Ex' + NameSuffix, Result);
|
|
{$IFDEF WINXP_UP}
|
|
@CM_Get_DevNode_Custom_PropertyA := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Get_DevNode_Custom_PropertyA', Result);
|
|
@CM_Get_DevNode_Custom_PropertyW := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Get_DevNode_Custom_PropertyW', Result);
|
|
@CM_Get_DevNode_Custom_Property := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Get_DevNode_Custom_Property' + NameSuffix, Result);
|
|
@CM_Get_DevNode_Custom_Property_ExA := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Get_DevNode_Custom_Property_ExA', Result);
|
|
@CM_Get_DevNode_Custom_Property_ExW := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Get_DevNode_Custom_Property_ExW', Result);
|
|
@CM_Get_DevNode_Custom_Property_Ex := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Get_DevNode_Custom_Property_Ex' + NameSuffix, Result);
|
|
@CM_Get_DevInst_Custom_PropertyA := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Get_DevNode_Custom_PropertyA', Result);
|
|
@CM_Get_DevInst_Custom_PropertyW := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Get_DevNode_Custom_PropertyW', Result);
|
|
@CM_Get_DevInst_Custom_Property := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Get_DevNode_Custom_Property' + NameSuffix, Result);
|
|
@CM_Get_DevInst_Custom_Property_ExA := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Get_DevNode_Custom_Property_ExA', Result);
|
|
@CM_Get_DevInst_Custom_Property_ExW := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Get_DevNode_Custom_Property_ExW', Result);
|
|
@CM_Get_DevInst_Custom_Property_Ex := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Get_DevNode_Custom_Property_Ex' + NameSuffix, Result);
|
|
{$ENDIF WINXP_UP}
|
|
@CM_Get_DevNode_Status := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Status', Result);
|
|
@CM_Get_DevInst_Status := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Status', Result);
|
|
@CM_Get_DevNode_Status_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Status_Ex', Result);
|
|
@CM_Get_DevInst_Status_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_DevNode_Status_Ex', Result);
|
|
@CM_Get_First_Log_Conf := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_First_Log_Conf', Result);
|
|
@CM_Get_First_Log_Conf_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_First_Log_Conf_Ex', Result);
|
|
@CM_Get_Global_State := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Global_State', Result);
|
|
@CM_Get_Global_State_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Global_State_Ex', Result);
|
|
@CM_Get_Hardware_Profile_InfoA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Hardware_Profile_InfoA', Result);
|
|
@CM_Get_Hardware_Profile_InfoW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Hardware_Profile_InfoW', Result);
|
|
@CM_Get_Hardware_Profile_Info := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Hardware_Profile_Info' + NameSuffix, Result);
|
|
@CM_Get_Hardware_Profile_Info_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Hardware_Profile_Info_ExA', Result);
|
|
@CM_Get_Hardware_Profile_Info_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Hardware_Profile_Info_ExW', Result);
|
|
@CM_Get_Hardware_Profile_Info_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Hardware_Profile_Info_Ex' + NameSuffix, Result);
|
|
@CM_Get_HW_Prof_FlagsA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_HW_Prof_FlagsA', Result);
|
|
@CM_Get_HW_Prof_FlagsW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_HW_Prof_FlagsW', Result);
|
|
@CM_Get_HW_Prof_Flags := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_HW_Prof_Flags' + NameSuffix, Result);
|
|
@CM_Get_HW_Prof_Flags_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_HW_Prof_Flags_ExA', Result);
|
|
@CM_Get_HW_Prof_Flags_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_HW_Prof_Flags_ExW', Result);
|
|
@CM_Get_HW_Prof_Flags_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_HW_Prof_Flags_Ex' + NameSuffix, Result);
|
|
{$IFNDEF WINNT4}
|
|
@CM_Get_Device_Interface_AliasA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_AliasA', Result);
|
|
@CM_Get_Device_Interface_AliasW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_AliasW', Result);
|
|
@CM_Get_Device_Interface_Alias := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_Alias' + NameSuffix, Result);
|
|
@CM_Get_Device_Interface_Alias_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_Alias_ExA', Result);
|
|
@CM_Get_Device_Interface_Alias_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_Alias_ExW', Result);
|
|
@CM_Get_Device_Interface_Alias_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_Alias_Ex' + NameSuffix, Result);
|
|
@CM_Get_Device_Interface_ListA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_ListA', Result);
|
|
@CM_Get_Device_Interface_ListW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_ListW', Result);
|
|
@CM_Get_Device_Interface_List := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_List' + NameSuffix, Result);
|
|
@CM_Get_Device_Interface_List_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_List_ExA', Result);
|
|
@CM_Get_Device_Interface_List_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_List_ExW', Result);
|
|
@CM_Get_Device_Interface_List_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_List_Ex' + NameSuffix, Result);
|
|
@CM_Get_Device_Interface_List_SizeA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_List_SizeA', Result);
|
|
@CM_Get_Device_Interface_List_SizeW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_List_SizeW', Result);
|
|
@CM_Get_Device_Interface_List_Size := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_List_Size' + NameSuffix, Result);
|
|
@CM_Get_Device_Interface_List_Size_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_List_Size_ExA', Result);
|
|
@CM_Get_Device_Interface_List_Size_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_List_Size_ExW', Result);
|
|
@CM_Get_Device_Interface_List_Size_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Device_Interface_List_Size_Ex' + NameSuffix, Result);
|
|
@CM_Get_Log_Conf_Priority := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Log_Conf_Priority', Result);
|
|
@CM_Get_Log_Conf_Priority_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Log_Conf_Priority_Ex', Result);
|
|
{$ENDIF !WINNT4}
|
|
@CM_Get_Next_Log_Conf := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Next_Log_Conf', Result);
|
|
@CM_Get_Next_Log_Conf_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Next_Log_Conf_Ex', Result);
|
|
@CM_Get_Parent := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Parent', Result);
|
|
@CM_Get_Parent_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Parent_Ex', Result);
|
|
@CM_Get_Res_Des_Data := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Res_Des_Data', Result);
|
|
@CM_Get_Res_Des_Data_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Res_Des_Data_Ex', Result);
|
|
@CM_Get_Res_Des_Data_Size := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Res_Des_Data_Size', Result);
|
|
@CM_Get_Res_Des_Data_Size_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Res_Des_Data_Size_Ex', Result);
|
|
@CM_Get_Sibling := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Sibling', Result);
|
|
@CM_Get_Sibling_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Sibling_Ex', Result);
|
|
@CM_Get_Version := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Version', Result);
|
|
@CM_Get_Version_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Version_Ex', Result);
|
|
{$IFDEF WINXP_UP}
|
|
@CM_Is_Version_Available := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Is_Version_Available', Result);
|
|
@CM_Is_Version_Available_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Is_Version_Available_Ex', Result);
|
|
{$ENDIF WINXP_UP}
|
|
@CM_Intersect_Range_List := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Intersect_Range_List', Result);
|
|
@CM_Invert_Range_List := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Invert_Range_List', Result);
|
|
@CM_Locate_DevNodeA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Locate_DevNodeA', Result);
|
|
@CM_Locate_DevNodeW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Locate_DevNodeW', Result);
|
|
@CM_Locate_DevNode := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Locate_DevNode' + NameSuffix, Result);
|
|
@CM_Locate_DevNode_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Locate_DevNode_ExA', Result);
|
|
@CM_Locate_DevNode_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Locate_DevNode_ExW', Result);
|
|
@CM_Locate_DevNode_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Locate_DevNode_Ex' + NameSuffix, Result);
|
|
@CM_Locate_DevInstA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Locate_DevNodeA', Result);
|
|
@CM_Locate_DevInstW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Locate_DevNodeW', Result);
|
|
@CM_Locate_DevInst := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Locate_DevNode' + NameSuffix, Result);
|
|
@CM_Locate_DevInst_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Locate_DevNode_ExA', Result);
|
|
@CM_Locate_DevInst_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Locate_DevNode_ExW', Result);
|
|
@CM_Locate_DevInst_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Locate_DevNode_Ex' + NameSuffix, Result);
|
|
@CM_Merge_Range_List := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Merge_Range_List', Result);
|
|
@CM_Modify_Res_Des := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Modify_Res_Des', Result);
|
|
@CM_Modify_Res_Des_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Modify_Res_Des_Ex', Result);
|
|
@CM_Move_DevNode := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Move_DevNode', Result);
|
|
@CM_Move_DevInst := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Move_DevNode', Result);
|
|
@CM_Move_DevNode_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Move_DevNode_Ex', Result);
|
|
@CM_Move_DevInst_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Move_DevNode_Ex', Result);
|
|
@CM_Next_Range := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Next_Range', Result);
|
|
@CM_Get_Next_Res_Des := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Next_Res_Des', Result);
|
|
@CM_Get_Next_Res_Des_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Next_Res_Des_Ex', Result);
|
|
@CM_Open_Class_KeyA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Open_Class_KeyA', Result);
|
|
@CM_Open_Class_KeyW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Open_Class_KeyW', Result);
|
|
@CM_Open_Class_Key := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Open_Class_Key' + NameSuffix, Result);
|
|
@CM_Open_Class_Key_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Open_Class_Key_ExA', Result);
|
|
@CM_Open_Class_Key_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Open_Class_Key_ExW', Result);
|
|
@CM_Open_Class_Key_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Open_Class_Key_Ex' + NameSuffix, Result);
|
|
@CM_Open_DevNode_Key := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Open_DevNode_Key', Result);
|
|
@CM_Open_DevInst_Key := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Open_DevNode_Key', Result);
|
|
@CM_Open_DevNode_Key_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Open_DevNode_Key_Ex', Result);
|
|
@CM_Open_DevInst_Key_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Open_DevNode_Key_Ex', Result);
|
|
@CM_Query_Arbitrator_Free_Data := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_Arbitrator_Free_Data', Result);
|
|
@CM_Query_Arbitrator_Free_Data_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_Arbitrator_Free_Data_Ex', Result);
|
|
@CM_Query_Arbitrator_Free_Size := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_Arbitrator_Free_Size', Result);
|
|
@CM_Query_Arbitrator_Free_Size_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_Arbitrator_Free_Size_Ex', Result);
|
|
@CM_Query_Remove_SubTree := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_Remove_SubTree', Result);
|
|
@CM_Query_Remove_SubTree_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_Remove_SubTree_Ex', Result);
|
|
{$IFDEF WIN2000_UP}
|
|
@CM_Query_And_Remove_SubTreeA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_And_Remove_SubTreeA', Result);
|
|
@CM_Query_And_Remove_SubTreeW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_And_Remove_SubTreeW', Result);
|
|
@CM_Query_And_Remove_SubTree := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_And_Remove_SubTree' + NameSuffix, Result);
|
|
@CM_Query_And_Remove_SubTree_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_And_Remove_SubTree_ExA', Result);
|
|
@CM_Query_And_Remove_SubTree_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_And_Remove_SubTree_ExW', Result);
|
|
@CM_Query_And_Remove_SubTree_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_And_Remove_SubTree_Ex' + NameSuffix, Result);
|
|
@CM_Request_Device_EjectA := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Request_Device_EjectA', Result);
|
|
@CM_Request_Device_EjectW := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Request_Device_EjectW', Result);
|
|
@CM_Request_Device_Eject := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Request_Device_Eject' + NameSuffix, Result);
|
|
@CM_Request_Device_Eject_ExA := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Request_Device_Eject_ExA', Result);
|
|
@CM_Request_Device_Eject_ExW := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Request_Device_Eject_ExW', Result);
|
|
@CM_Request_Device_Eject_Ex := GetModuleSymbolEx(GetSetupApiModuleHandle, 'CM_Request_Device_Eject_Ex' + NameSuffix, Result);
|
|
{$ENDIF WIN2000_UP}
|
|
@CM_Reenumerate_DevNode := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Reenumerate_DevNode', Result);
|
|
@CM_Reenumerate_DevInst := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Reenumerate_DevNode', Result);
|
|
@CM_Reenumerate_DevNode_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Reenumerate_DevNode_Ex', Result);
|
|
@CM_Reenumerate_DevInst_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Reenumerate_DevNode_Ex', Result);
|
|
{$IFNDEF WINNT4}
|
|
@CM_Register_Device_InterfaceA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Register_Device_InterfaceA', Result);
|
|
@CM_Register_Device_InterfaceW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Register_Device_InterfaceW', Result);
|
|
@CM_Register_Device_Interface := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Register_Device_Interface' + NameSuffix, Result);
|
|
@CM_Register_Device_Interface_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Register_Device_Interface_ExA', Result);
|
|
@CM_Register_Device_Interface_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Register_Device_Interface_ExW', Result);
|
|
@CM_Register_Device_Interface_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Register_Device_Interface_Ex' + NameSuffix, Result);
|
|
@CM_Set_DevNode_Problem_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Problem_Ex', Result);
|
|
@CM_Set_DevInst_Problem_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Problem_Ex', Result);
|
|
@CM_Set_DevNode_Problem := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Problem', Result);
|
|
@CM_Set_DevInst_Problem := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Problem', Result);
|
|
@CM_Unregister_Device_InterfaceA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Unregister_Device_InterfaceA', Result);
|
|
@CM_Unregister_Device_InterfaceW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Unregister_Device_InterfaceW', Result);
|
|
@CM_Unregister_Device_Interface := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Unregister_Device_Interface' + NameSuffix, Result);
|
|
@CM_Unregister_Device_Interface_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Unregister_Device_Interface_ExA', Result);
|
|
@CM_Unregister_Device_Interface_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Unregister_Device_Interface_ExW', Result);
|
|
@CM_Unregister_Device_Interface_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Unregister_Device_Interface_Ex' + NameSuffix, Result);
|
|
@CM_Register_Device_Driver := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Register_Device_Driver', Result);
|
|
@CM_Register_Device_Driver_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Register_Device_Driver_Ex', Result);
|
|
{$ENDIF !WINNT4}
|
|
@CM_Remove_SubTree := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Remove_SubTree', Result);
|
|
@CM_Remove_SubTree_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Remove_SubTree_Ex', Result);
|
|
@CM_Set_DevNode_Registry_PropertyA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Registry_PropertyA', Result);
|
|
@CM_Set_DevNode_Registry_PropertyW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Registry_PropertyW', Result);
|
|
@CM_Set_DevNode_Registry_Property := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Registry_Property' + NameSuffix, Result);
|
|
@CM_Set_DevNode_Registry_Property_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Registry_Property_ExA', Result);
|
|
@CM_Set_DevNode_Registry_Property_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Registry_Property_ExW', Result);
|
|
@CM_Set_DevNode_Registry_Property_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Registry_Property_Ex' + NameSuffix, Result);
|
|
@CM_Set_DevInst_Registry_PropertyA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Registry_PropertyA', Result);
|
|
@CM_Set_DevInst_Registry_PropertyW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Registry_PropertyW', Result);
|
|
@CM_Set_DevInst_Registry_Property := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Registry_Property' + NameSuffix, Result);
|
|
@CM_Set_DevInst_Registry_Property_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Registry_Property_ExA', Result);
|
|
@CM_Set_DevInst_Registry_Property_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Registry_Property_ExW', Result);
|
|
@CM_Set_DevInst_Registry_Property_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_DevNode_Registry_Property_Ex' + NameSuffix, Result);
|
|
{$IFNDEF WINNT4}
|
|
@CM_Is_Dock_Station_Present := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Is_Dock_Station_Present', Result);
|
|
{$ENDIF !WINNT4}
|
|
{$IFDEF WIN2000_UP}
|
|
@CM_Is_Dock_Station_Present_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Is_Dock_Station_Present_Ex', Result);
|
|
{$ENDIF WIN2000_UP}
|
|
{$IFNDEF WINNT4}
|
|
@CM_Request_Eject_PC := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Request_Eject_PC', Result);
|
|
{$ENDIF !WINNT4}
|
|
{$IFDEF WIN2000_UP}
|
|
@CM_Request_Eject_PC_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Request_Eject_PC_Ex', Result);
|
|
{$ENDIF WIN2000_UP}
|
|
@CM_Set_HW_Prof_FlagsA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_HW_Prof_FlagsA', Result);
|
|
@CM_Set_HW_Prof_FlagsW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_HW_Prof_FlagsW', Result);
|
|
@CM_Set_HW_Prof_Flags := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_HW_Prof_Flags' + NameSuffix, Result);
|
|
@CM_Set_HW_Prof_Flags_ExA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_HW_Prof_Flags_ExA', Result);
|
|
@CM_Set_HW_Prof_Flags_ExW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_HW_Prof_Flags_ExW', Result);
|
|
@CM_Set_HW_Prof_Flags_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_HW_Prof_Flags_Ex' + NameSuffix, Result);
|
|
@CM_Setup_DevNode := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Setup_DevNode', Result);
|
|
@CM_Setup_DevInst := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Setup_DevNode', Result);
|
|
@CM_Setup_DevNode_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Setup_DevNode_Ex', Result);
|
|
@CM_Setup_DevInst_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Setup_DevNode_Ex', Result);
|
|
@CM_Test_Range_Available := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Test_Range_Available', Result);
|
|
@CM_Uninstall_DevNode := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Uninstall_DevNode', Result);
|
|
@CM_Uninstall_DevInst := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Uninstall_DevNode', Result);
|
|
@CM_Uninstall_DevNode_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Uninstall_DevNode_Ex', Result);
|
|
@CM_Uninstall_DevInst_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Uninstall_DevNode_Ex', Result);
|
|
@CM_Run_Detection := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Run_Detection', Result);
|
|
@CM_Run_Detection_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Run_Detection_Ex', Result);
|
|
@CM_Set_HW_Prof := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_HW_Prof', Result);
|
|
@CM_Set_HW_Prof_Ex := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_HW_Prof_Ex', Result);
|
|
{$IFDEF WIN2000_UP}
|
|
@CM_Query_Resource_Conflict_List := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Query_Resource_Conflict_List', Result);
|
|
@CM_Free_Resource_Conflict_Handle := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Free_Resource_Conflict_Handle', Result);
|
|
@CM_Get_Resource_Conflict_Count := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Resource_Conflict_Count', Result);
|
|
@CM_Get_Resource_Conflict_DetailsA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Resource_Conflict_DetailsA', Result);
|
|
@CM_Get_Resource_Conflict_DetailsW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Resource_Conflict_DetailsW', Result);
|
|
@CM_Get_Resource_Conflict_Details := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Resource_Conflict_Details' + NameSuffix, Result);
|
|
@CM_Get_Class_Registry_PropertyA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Registry_PropertyA', Result);
|
|
@CM_Get_Class_Registry_PropertyW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Registry_PropertyW', Result);
|
|
@CM_Get_Class_Registry_Property := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Get_Class_Registry_Property' + NameSuffix, Result);
|
|
@CM_Set_Class_Registry_PropertyA := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_Class_Registry_PropertyA', Result);
|
|
@CM_Set_Class_Registry_PropertyW := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_Class_Registry_PropertyW', Result);
|
|
@CM_Set_Class_Registry_Property := GetModuleSymbolEx(CfgMgrApiLib, 'CM_Set_Class_Registry_Property' + NameSuffix, Result);
|
|
@CM_WaitNoPendingInstallEvents := GetModuleSymbolEx(CfgMgrApiLib, 'CMP_WaitNoPendingInstallEvents', Result);
|
|
@CMP_WaitNoPendingInstallEvents := GetModuleSymbolEx(CfgMgrApiLib, 'CMP_WaitNoPendingInstallEvents', Result);
|
|
{$ENDIF WIN2000_UP}
|
|
if not Result then
|
|
UnloadConfigManagerApi;
|
|
end;
|
|
{$ELSE}
|
|
Result := True;
|
|
{$ENDIF CFGMGR32_LINKONREQUEST}
|
|
end;
|
|
|
|
procedure UnloadConfigManagerApi;
|
|
begin
|
|
UnloadSetupApi;
|
|
{$IFDEF CFGMGR32_LINKONREQUEST}
|
|
Dec(CfgMgrApiLoadCount);
|
|
if CfgMgrApiLoadCount > 0 then
|
|
Exit;
|
|
UnloadModule(CfgMgrApiLib);
|
|
CM_Add_Empty_Log_Conf := nil;
|
|
CM_Add_Empty_Log_Conf_Ex := nil;
|
|
CM_Add_IDA := nil;
|
|
CM_Add_IDW := nil;
|
|
CM_Add_ID := nil;
|
|
CM_Add_ID_ExA := nil;
|
|
CM_Add_ID_ExW := nil;
|
|
CM_Add_ID_Ex := nil;
|
|
CM_Add_Range := nil;
|
|
CM_Add_Res_Des := nil;
|
|
CM_Add_Res_Des_Ex := nil;
|
|
CM_Connect_MachineA := nil;
|
|
CM_Connect_MachineW := nil;
|
|
CM_Connect_Machine := nil;
|
|
CM_Create_DevNodeA := nil;
|
|
CM_Create_DevNodeW := nil;
|
|
CM_Create_DevNode := nil;
|
|
CM_Create_DevNode_ExA := nil;
|
|
CM_Create_DevNode_ExW := nil;
|
|
CM_Create_DevNode_Ex := nil;
|
|
CM_Create_DevInstA := nil;
|
|
CM_Create_DevInstW := nil;
|
|
CM_Create_DevInst := nil;
|
|
CM_Create_DevInst_ExA := nil;
|
|
CM_Create_DevInst_ExW := nil;
|
|
CM_Create_DevInst_Ex := nil;
|
|
CM_Create_Range_List := nil;
|
|
CM_Delete_Class_Key := nil;
|
|
CM_Delete_Class_Key_Ex := nil;
|
|
CM_Delete_DevNode_Key := nil;
|
|
CM_Delete_DevNode_Key_Ex := nil;
|
|
CM_Delete_DevInst_Key := nil;
|
|
CM_Delete_DevInst_Key_Ex := nil;
|
|
CM_Delete_Range := nil;
|
|
CM_Detect_Resource_Conflict := nil;
|
|
CM_Detect_Resource_Conflict_Ex := nil;
|
|
CM_Disable_DevNode := nil;
|
|
CM_Disable_DevNode_Ex := nil;
|
|
CM_Disable_DevInst := nil;
|
|
CM_Disable_DevInst_Ex := nil;
|
|
CM_Disconnect_Machine := nil;
|
|
CM_Dup_Range_List := nil;
|
|
CM_Enable_DevNode := nil;
|
|
CM_Enable_DevNode_Ex := nil;
|
|
CM_Enable_DevInst := nil;
|
|
CM_Enable_DevInst_Ex := nil;
|
|
CM_Enumerate_Classes := nil;
|
|
CM_Enumerate_Classes_Ex := nil;
|
|
CM_Enumerate_EnumeratorsA := nil;
|
|
CM_Enumerate_EnumeratorsW := nil;
|
|
CM_Enumerate_Enumerators := nil;
|
|
CM_Enumerate_Enumerators_ExA := nil;
|
|
CM_Enumerate_Enumerators_ExW := nil;
|
|
CM_Enumerate_Enumerators_Ex := nil;
|
|
CM_Find_Range := nil;
|
|
CM_First_Range := nil;
|
|
CM_Free_Log_Conf := nil;
|
|
CM_Free_Log_Conf_Ex := nil;
|
|
CM_Free_Log_Conf_Handle := nil;
|
|
CM_Free_Range_List := nil;
|
|
CM_Free_Res_Des := nil;
|
|
CM_Free_Res_Des_Ex := nil;
|
|
CM_Free_Res_Des_Handle := nil;
|
|
CM_Get_Child := nil;
|
|
CM_Get_Child_Ex := nil;
|
|
CM_Get_Class_NameA := nil;
|
|
CM_Get_Class_NameW := nil;
|
|
CM_Get_Class_Name := nil;
|
|
CM_Get_Class_Name_ExA := nil;
|
|
CM_Get_Class_Name_ExW := nil;
|
|
CM_Get_Class_Name_Ex := nil;
|
|
CM_Get_Class_Key_NameA := nil;
|
|
CM_Get_Class_Key_NameW := nil;
|
|
CM_Get_Class_Key_Name := nil;
|
|
CM_Get_Class_Key_Name_ExA := nil;
|
|
CM_Get_Class_Key_Name_ExW := nil;
|
|
CM_Get_Class_Key_Name_Ex := nil;
|
|
CM_Get_Depth := nil;
|
|
CM_Get_Depth_Ex := nil;
|
|
CM_Get_Device_IDA := nil;
|
|
CM_Get_Device_IDW := nil;
|
|
CM_Get_Device_ID := nil;
|
|
CM_Get_Device_ID_ExA := nil;
|
|
CM_Get_Device_ID_ExW := nil;
|
|
CM_Get_Device_ID_Ex := nil;
|
|
CM_Get_Device_ID_ListA := nil;
|
|
CM_Get_Device_ID_ListW := nil;
|
|
CM_Get_Device_ID_List := nil;
|
|
CM_Get_Device_ID_List_ExA := nil;
|
|
CM_Get_Device_ID_List_ExW := nil;
|
|
CM_Get_Device_ID_List_Ex := nil;
|
|
CM_Get_Device_ID_List_SizeA := nil;
|
|
CM_Get_Device_ID_List_SizeW := nil;
|
|
CM_Get_Device_ID_List_Size := nil;
|
|
CM_Get_Device_ID_List_Size_ExA := nil;
|
|
CM_Get_Device_ID_List_Size_ExW := nil;
|
|
CM_Get_Device_ID_List_Size_Ex := nil;
|
|
CM_Get_Device_ID_Size := nil;
|
|
CM_Get_Device_ID_Size_Ex := nil;
|
|
CM_Get_DevNode_Registry_PropertyA := nil;
|
|
CM_Get_DevNode_Registry_PropertyW := nil;
|
|
CM_Get_DevNode_Registry_Property := nil;
|
|
CM_Get_DevNode_Registry_Property_ExA := nil;
|
|
CM_Get_DevNode_Registry_Property_ExW := nil;
|
|
CM_Get_DevNode_Registry_Property_Ex := nil;
|
|
CM_Get_DevInst_Registry_PropertyA := nil;
|
|
CM_Get_DevInst_Registry_PropertyW := nil;
|
|
CM_Get_DevInst_Registry_Property := nil;
|
|
CM_Get_DevInst_Registry_Property_ExA := nil;
|
|
CM_Get_DevInst_Registry_Property_ExW := nil;
|
|
CM_Get_DevInst_Registry_Property_Ex := nil;
|
|
{$IFDEF WINXP_UP}
|
|
CM_Get_DevNode_Custom_PropertyA := nil;
|
|
CM_Get_DevNode_Custom_PropertyW := nil;
|
|
CM_Get_DevNode_Custom_Property := nil;
|
|
CM_Get_DevNode_Custom_Property_ExA := nil;
|
|
CM_Get_DevNode_Custom_Property_ExW := nil;
|
|
CM_Get_DevNode_Custom_Property_Ex := nil;
|
|
CM_Get_DevInst_Custom_PropertyA := nil;
|
|
CM_Get_DevInst_Custom_PropertyW := nil;
|
|
CM_Get_DevInst_Custom_Property := nil;
|
|
CM_Get_DevInst_Custom_Property_ExA := nil;
|
|
CM_Get_DevInst_Custom_Property_ExW := nil;
|
|
CM_Get_DevInst_Custom_Property_Ex := nil;
|
|
{$ENDIF WINXP_UP}
|
|
CM_Get_DevNode_Status := nil;
|
|
CM_Get_DevInst_Status := nil;
|
|
CM_Get_DevNode_Status_Ex := nil;
|
|
CM_Get_DevInst_Status_Ex := nil;
|
|
CM_Get_First_Log_Conf := nil;
|
|
CM_Get_First_Log_Conf_Ex := nil;
|
|
CM_Get_Global_State := nil;
|
|
CM_Get_Global_State_Ex := nil;
|
|
CM_Get_Hardware_Profile_InfoA := nil;
|
|
CM_Get_Hardware_Profile_InfoW := nil;
|
|
CM_Get_Hardware_Profile_Info := nil;
|
|
CM_Get_Hardware_Profile_Info_ExA := nil;
|
|
CM_Get_Hardware_Profile_Info_ExW := nil;
|
|
CM_Get_Hardware_Profile_Info_Ex := nil;
|
|
CM_Get_HW_Prof_FlagsA := nil;
|
|
CM_Get_HW_Prof_FlagsW := nil;
|
|
CM_Get_HW_Prof_Flags := nil;
|
|
CM_Get_HW_Prof_Flags_ExA := nil;
|
|
CM_Get_HW_Prof_Flags_ExW := nil;
|
|
CM_Get_HW_Prof_Flags_Ex := nil;
|
|
{$IFNDEF WINNT4}
|
|
CM_Get_Device_Interface_AliasA := nil;
|
|
CM_Get_Device_Interface_AliasW := nil;
|
|
CM_Get_Device_Interface_Alias := nil;
|
|
CM_Get_Device_Interface_Alias_ExA := nil;
|
|
CM_Get_Device_Interface_Alias_ExW := nil;
|
|
CM_Get_Device_Interface_Alias_Ex := nil;
|
|
CM_Get_Device_Interface_ListA := nil;
|
|
CM_Get_Device_Interface_ListW := nil;
|
|
CM_Get_Device_Interface_List := nil;
|
|
CM_Get_Device_Interface_List_ExA := nil;
|
|
CM_Get_Device_Interface_List_ExW := nil;
|
|
CM_Get_Device_Interface_List_Ex := nil;
|
|
CM_Get_Device_Interface_List_SizeA := nil;
|
|
CM_Get_Device_Interface_List_SizeW := nil;
|
|
CM_Get_Device_Interface_List_Size := nil;
|
|
CM_Get_Device_Interface_List_Size_ExA := nil;
|
|
CM_Get_Device_Interface_List_Size_ExW := nil;
|
|
CM_Get_Device_Interface_List_Size_Ex := nil;
|
|
CM_Get_Log_Conf_Priority := nil;
|
|
CM_Get_Log_Conf_Priority_Ex := nil;
|
|
{$ENDIF !WINNT4}
|
|
CM_Get_Next_Log_Conf := nil;
|
|
CM_Get_Next_Log_Conf_Ex := nil;
|
|
CM_Get_Parent := nil;
|
|
CM_Get_Parent_Ex := nil;
|
|
CM_Get_Res_Des_Data := nil;
|
|
CM_Get_Res_Des_Data_Ex := nil;
|
|
CM_Get_Res_Des_Data_Size := nil;
|
|
CM_Get_Res_Des_Data_Size_Ex := nil;
|
|
CM_Get_Sibling := nil;
|
|
CM_Get_Sibling_Ex := nil;
|
|
CM_Get_Version := nil;
|
|
CM_Get_Version_Ex := nil;
|
|
{$IFDEF WINXP_UP}
|
|
CM_Is_Version_Available := nil;
|
|
CM_Is_Version_Available_Ex := nil;
|
|
{$ENDIF WINXP_UP}
|
|
CM_Intersect_Range_List := nil;
|
|
CM_Invert_Range_List := nil;
|
|
CM_Locate_DevNodeA := nil;
|
|
CM_Locate_DevNodeW := nil;
|
|
CM_Locate_DevNode := nil;
|
|
CM_Locate_DevNode_ExA := nil;
|
|
CM_Locate_DevNode_ExW := nil;
|
|
CM_Locate_DevNode_Ex := nil;
|
|
CM_Locate_DevInstA := nil;
|
|
CM_Locate_DevInstW := nil;
|
|
CM_Locate_DevInst := nil;
|
|
CM_Locate_DevInst_ExA := nil;
|
|
CM_Locate_DevInst_ExW := nil;
|
|
CM_Locate_DevInst_Ex := nil;
|
|
CM_Merge_Range_List := nil;
|
|
CM_Modify_Res_Des := nil;
|
|
CM_Modify_Res_Des_Ex := nil;
|
|
CM_Move_DevNode := nil;
|
|
CM_Move_DevInst := nil;
|
|
CM_Move_DevNode_Ex := nil;
|
|
CM_Move_DevInst_Ex := nil;
|
|
CM_Next_Range := nil;
|
|
CM_Get_Next_Res_Des := nil;
|
|
CM_Get_Next_Res_Des_Ex := nil;
|
|
CM_Open_Class_KeyA := nil;
|
|
CM_Open_Class_KeyW := nil;
|
|
CM_Open_Class_Key := nil;
|
|
CM_Open_Class_Key_ExA := nil;
|
|
CM_Open_Class_Key_ExW := nil;
|
|
CM_Open_Class_Key_Ex := nil;
|
|
CM_Open_DevNode_Key := nil;
|
|
CM_Open_DevInst_Key := nil;
|
|
CM_Open_DevNode_Key_Ex := nil;
|
|
CM_Open_DevInst_Key_Ex := nil;
|
|
CM_Query_Arbitrator_Free_Data := nil;
|
|
CM_Query_Arbitrator_Free_Data_Ex := nil;
|
|
CM_Query_Arbitrator_Free_Size := nil;
|
|
CM_Query_Arbitrator_Free_Size_Ex := nil;
|
|
CM_Query_Remove_SubTree := nil;
|
|
CM_Query_Remove_SubTree_Ex := nil;
|
|
{$IFDEF WIN2000_UP}
|
|
CM_Query_And_Remove_SubTreeA := nil;
|
|
CM_Query_And_Remove_SubTreeW := nil;
|
|
CM_Query_And_Remove_SubTree := nil;
|
|
CM_Query_And_Remove_SubTree_ExA := nil;
|
|
CM_Query_And_Remove_SubTree_ExW := nil;
|
|
CM_Query_And_Remove_SubTree_Ex := nil;
|
|
CM_Request_Device_EjectA := nil;
|
|
CM_Request_Device_EjectW := nil;
|
|
CM_Request_Device_Eject := nil;
|
|
CM_Request_Device_Eject_ExA := nil;
|
|
CM_Request_Device_Eject_ExW := nil;
|
|
CM_Request_Device_Eject_Ex := nil;
|
|
{$ENDIF WIN2000_UP}
|
|
CM_Reenumerate_DevNode := nil;
|
|
CM_Reenumerate_DevInst := nil;
|
|
CM_Reenumerate_DevNode_Ex := nil;
|
|
CM_Reenumerate_DevInst_Ex := nil;
|
|
{$IFNDEF WINNT4}
|
|
CM_Register_Device_InterfaceA := nil;
|
|
CM_Register_Device_InterfaceW := nil;
|
|
CM_Register_Device_Interface := nil;
|
|
CM_Register_Device_Interface_ExA := nil;
|
|
CM_Register_Device_Interface_ExW := nil;
|
|
CM_Register_Device_Interface_Ex := nil;
|
|
CM_Set_DevNode_Problem_Ex := nil;
|
|
CM_Set_DevInst_Problem_Ex := nil;
|
|
CM_Set_DevNode_Problem := nil;
|
|
CM_Set_DevInst_Problem := nil;
|
|
CM_Unregister_Device_InterfaceA := nil;
|
|
CM_Unregister_Device_InterfaceW := nil;
|
|
CM_Unregister_Device_Interface := nil;
|
|
CM_Unregister_Device_Interface_ExA := nil;
|
|
CM_Unregister_Device_Interface_ExW := nil;
|
|
CM_Unregister_Device_Interface_Ex := nil;
|
|
CM_Register_Device_Driver := nil;
|
|
CM_Register_Device_Driver_Ex := nil;
|
|
{$ENDIF !WINNT4}
|
|
CM_Remove_SubTree := nil;
|
|
CM_Remove_SubTree_Ex := nil;
|
|
CM_Set_DevNode_Registry_PropertyA := nil;
|
|
CM_Set_DevNode_Registry_PropertyW := nil;
|
|
CM_Set_DevNode_Registry_Property := nil;
|
|
CM_Set_DevNode_Registry_Property_ExA := nil;
|
|
CM_Set_DevNode_Registry_Property_ExW := nil;
|
|
CM_Set_DevNode_Registry_Property_Ex := nil;
|
|
CM_Set_DevInst_Registry_PropertyA := nil;
|
|
CM_Set_DevInst_Registry_PropertyW := nil;
|
|
CM_Set_DevInst_Registry_Property := nil;
|
|
CM_Set_DevInst_Registry_Property_ExA := nil;
|
|
CM_Set_DevInst_Registry_Property_ExW := nil;
|
|
CM_Set_DevInst_Registry_Property_Ex := nil;
|
|
{$IFNDEF WINNT4}
|
|
CM_Is_Dock_Station_Present := nil;
|
|
{$ENDIF !WINNT4}
|
|
{$IFDEF WIN2000_UP}
|
|
CM_Is_Dock_Station_Present_Ex := nil;
|
|
{$ENDIF WIN2000_UP}
|
|
{$IFNDEF WINNT4}
|
|
CM_Request_Eject_PC := nil;
|
|
{$ENDIF !WINNT4}
|
|
{$IFDEF WIN2000_UP}
|
|
CM_Request_Eject_PC_Ex := nil;
|
|
{$ENDIF WIN2000_UP}
|
|
CM_Set_HW_Prof_FlagsA := nil;
|
|
CM_Set_HW_Prof_FlagsW := nil;
|
|
CM_Set_HW_Prof_Flags := nil;
|
|
CM_Set_HW_Prof_Flags_ExA := nil;
|
|
CM_Set_HW_Prof_Flags_ExW := nil;
|
|
CM_Set_HW_Prof_Flags_Ex := nil;
|
|
CM_Setup_DevNode := nil;
|
|
CM_Setup_DevInst := nil;
|
|
CM_Setup_DevNode_Ex := nil;
|
|
CM_Setup_DevInst_Ex := nil;
|
|
CM_Test_Range_Available := nil;
|
|
CM_Uninstall_DevNode := nil;
|
|
CM_Uninstall_DevInst := nil;
|
|
CM_Uninstall_DevNode_Ex := nil;
|
|
CM_Uninstall_DevInst_Ex := nil;
|
|
CM_Run_Detection := nil;
|
|
CM_Run_Detection_Ex := nil;
|
|
CM_Set_HW_Prof := nil;
|
|
CM_Set_HW_Prof_Ex := nil;
|
|
{$IFDEF WIN2000_UP}
|
|
CM_Query_Resource_Conflict_List := nil;
|
|
CM_Free_Resource_Conflict_Handle := nil;
|
|
CM_Get_Resource_Conflict_Count := nil;
|
|
CM_Get_Resource_Conflict_DetailsA := nil;
|
|
CM_Get_Resource_Conflict_DetailsW := nil;
|
|
CM_Get_Resource_Conflict_Details := nil;
|
|
CM_Get_Class_Registry_PropertyA := nil;
|
|
CM_Get_Class_Registry_PropertyW := nil;
|
|
CM_Get_Class_Registry_Property := nil;
|
|
CM_Set_Class_Registry_PropertyA := nil;
|
|
CM_Set_Class_Registry_PropertyW := nil;
|
|
CM_Set_Class_Registry_Property := nil;
|
|
CM_WaitNoPendingInstallEvents := nil;
|
|
CMP_WaitNoPendingInstallEvents := nil;
|
|
{$ENDIF WIN2000_UP}
|
|
{$ENDIF CFGMGR32_LINKONREQUEST}
|
|
end;
|
|
|
|
{$IFNDEF CFGMGR32_LINKONREQUEST}
|
|
|
|
function CM_Add_Empty_Log_Conf; external CfgMgrDllName name 'CM_Add_Empty_Log_Conf';
|
|
function CM_Add_Empty_Log_Conf_Ex; external CfgMgrDllName name 'CM_Add_Empty_Log_Conf_Ex';
|
|
function CM_Add_ID; external CfgMgrDllName name 'CM_Add_ID' + NameSuffix;
|
|
function CM_Add_IDA; external CfgMgrDllName name 'CM_Add_IDA';
|
|
function CM_Add_IDW; external CfgMgrDllName name 'CM_Add_IDW';
|
|
function CM_Add_ID_Ex; external CfgMgrDllName name 'CM_Add_ID_Ex' + NameSuffix;
|
|
function CM_Add_ID_ExA; external CfgMgrDllName name 'CM_Add_ID_ExA';
|
|
function CM_Add_ID_ExW; external CfgMgrDllName name 'CM_Add_ID_ExW';
|
|
function CM_Add_Range; external CfgMgrDllName name 'CM_Add_Range';
|
|
function CM_Add_Res_Des; external CfgMgrDllName name 'CM_Add_Res_Des';
|
|
function CM_Add_Res_Des_Ex; external CfgMgrDllName name 'CM_Add_Res_Des_Ex';
|
|
function CM_Connect_Machine; external CfgMgrDllName name 'CM_Connect_Machine' + NameSuffix;
|
|
function CM_Connect_MachineA; external CfgMgrDllName name 'CM_Connect_MachineA';
|
|
function CM_Connect_MachineW; external CfgMgrDllName name 'CM_Connect_MachineW';
|
|
function CM_Create_DevNode; external CfgMgrDllName name 'CM_Create_DevNode' + NameSuffix;
|
|
function CM_Create_DevNodeA; external CfgMgrDllName name 'CM_Create_DevNodeA';
|
|
function CM_Create_DevNodeW; external CfgMgrDllName name 'CM_Create_DevNodeW';
|
|
function CM_Create_DevNode_Ex; external CfgMgrDllName name 'CM_Create_DevNode_Ex' + NameSuffix;
|
|
function CM_Create_DevNode_ExA; external CfgMgrDllName name 'CM_Create_DevNode_ExA';
|
|
function CM_Create_DevNode_ExW; external CfgMgrDllName name 'CM_Create_DevNode_ExW';
|
|
function CM_Create_DevInst; external CfgMgrDllName name 'CM_Create_DevNode' + NameSuffix;
|
|
function CM_Create_DevInstA; external CfgMgrDllName name 'CM_Create_DevNodeA';
|
|
function CM_Create_DevInstW; external CfgMgrDllName name 'CM_Create_DevNodeW';
|
|
function CM_Create_DevInst_Ex; external CfgMgrDllName name 'CM_Create_DevNode_Ex' + NameSuffix;
|
|
function CM_Create_DevInst_ExA; external CfgMgrDllName name 'CM_Create_DevNode_ExA';
|
|
function CM_Create_DevInst_ExW; external CfgMgrDllName name 'CM_Create_DevNode_ExW';
|
|
function CM_Create_Range_List; external CfgMgrDllName name 'CM_Create_Range_List';
|
|
function CM_Delete_Class_Key; external CfgMgrDllName name 'CM_Delete_Class_Key';
|
|
function CM_Delete_Class_Key_Ex; external CfgMgrDllName name 'CM_Delete_Class_Key_Ex';
|
|
function CM_Delete_DevNode_Key; external CfgMgrDllName name 'CM_Delete_DevNode_Key';
|
|
function CM_Delete_DevNode_Key_Ex; external CfgMgrDllName name 'CM_Delete_DevNode_Key_Ex';
|
|
function CM_Delete_DevInst_Key; external CfgMgrDllName name 'CM_Delete_DevNode_Key';
|
|
function CM_Delete_DevInst_Key_Ex; external CfgMgrDllName name 'CM_Delete_DevNode_Key_Ex';
|
|
function CM_Delete_Range; external CfgMgrDllName name 'CM_Delete_Range';
|
|
function CM_Detect_Resource_Conflict; external CfgMgrDllName name 'CM_Detect_Resource_Conflict';
|
|
function CM_Detect_Resource_Conflict_Ex; external CfgMgrDllName name 'CM_Detect_Resource_Conflict_Ex';
|
|
function CM_Disable_DevNode; external CfgMgrDllName name 'CM_Disable_DevNode';
|
|
function CM_Disable_DevNode_Ex; external CfgMgrDllName name 'CM_Disable_DevNode_Ex';
|
|
function CM_Disable_DevInst; external CfgMgrDllName name 'CM_Disable_DevNode';
|
|
function CM_Disable_DevInst_Ex; external CfgMgrDllName name 'CM_Disable_DevNode_Ex';
|
|
function CM_Disconnect_Machine; external CfgMgrDllName name 'CM_Disconnect_Machine';
|
|
function CM_Dup_Range_List; external CfgMgrDllName name 'CM_Dup_Range_List';
|
|
function CM_Enable_DevNode; external CfgMgrDllName name 'CM_Enable_DevNode';
|
|
function CM_Enable_DevNode_Ex; external CfgMgrDllName name 'CM_Enable_DevNode_Ex';
|
|
function CM_Enable_DevInst; external CfgMgrDllName name 'CM_Enable_DevNode';
|
|
function CM_Enable_DevInst_Ex; external CfgMgrDllName name 'CM_Enable_DevNode_Ex';
|
|
function CM_Enumerate_Classes; external CfgMgrDllName name 'CM_Enumerate_Classes';
|
|
function CM_Enumerate_Classes_Ex; external CfgMgrDllName name 'CM_Enumerate_Classes_Ex';
|
|
function CM_Enumerate_Enumerators; external CfgMgrDllName name 'CM_Enumerate_Enumerators' + NameSuffix;
|
|
function CM_Enumerate_EnumeratorsA; external CfgMgrDllName name 'CM_Enumerate_EnumeratorsA';
|
|
function CM_Enumerate_EnumeratorsW; external CfgMgrDllName name 'CM_Enumerate_EnumeratorsW';
|
|
function CM_Enumerate_Enumerators_Ex; external CfgMgrDllName name 'CM_Enumerate_Enumerators_Ex' + NameSuffix;
|
|
function CM_Enumerate_Enumerators_ExA; external CfgMgrDllName name 'CM_Enumerate_Enumerators_ExA';
|
|
function CM_Enumerate_Enumerators_ExW; external CfgMgrDllName name 'CM_Enumerate_Enumerators_ExW';
|
|
function CM_Find_Range; external CfgMgrDllName name 'CM_Find_Range';
|
|
function CM_First_Range; external CfgMgrDllName name 'CM_First_Range';
|
|
function CM_Free_Log_Conf; external CfgMgrDllName name 'CM_Free_Log_Conf';
|
|
function CM_Free_Log_Conf_Ex; external CfgMgrDllName name 'CM_Free_Log_Conf_Ex';
|
|
function CM_Free_Log_Conf_Handle; external CfgMgrDllName name 'CM_Free_Log_Conf_Handle';
|
|
function CM_Free_Range_List; external CfgMgrDllName name 'CM_Free_Range_List';
|
|
function CM_Free_Res_Des; external CfgMgrDllName name 'CM_Free_Res_Des';
|
|
function CM_Free_Res_Des_Ex; external CfgMgrDllName name 'CM_Free_Res_Des_Ex';
|
|
function CM_Free_Res_Des_Handle; external CfgMgrDllName name 'CM_Free_Res_Des_Handle';
|
|
function CM_Get_Child; external CfgMgrDllName name 'CM_Get_Child';
|
|
function CM_Get_Child_Ex; external CfgMgrDllName name 'CM_Get_Child_Ex';
|
|
function CM_Get_Class_Name; external CfgMgrDllName name 'CM_Get_Class_Name' + NameSuffix;
|
|
function CM_Get_Class_NameA; external CfgMgrDllName name 'CM_Get_Class_NameA';
|
|
function CM_Get_Class_NameW; external CfgMgrDllName name 'CM_Get_Class_NameW';
|
|
function CM_Get_Class_Name_Ex; external CfgMgrDllName name 'CM_Get_Class_Name_Ex' + NameSuffix;
|
|
function CM_Get_Class_Name_ExA; external CfgMgrDllName name 'CM_Get_Class_Name_ExA';
|
|
function CM_Get_Class_Name_ExW; external CfgMgrDllName name 'CM_Get_Class_Name_ExW';
|
|
function CM_Get_Class_Key_Name; external CfgMgrDllName name 'CM_Get_Class_Key_Name' + NameSuffix;
|
|
function CM_Get_Class_Key_NameA; external CfgMgrDllName name 'CM_Get_Class_Key_NameA';
|
|
function CM_Get_Class_Key_NameW; external CfgMgrDllName name 'CM_Get_Class_Key_NameW';
|
|
function CM_Get_Class_Key_Name_Ex; external CfgMgrDllName name 'CM_Get_Class_Key_Name_Ex' + NameSuffix;
|
|
function CM_Get_Class_Key_Name_ExA; external CfgMgrDllName name 'CM_Get_Class_Key_Name_ExA';
|
|
function CM_Get_Class_Key_Name_ExW; external CfgMgrDllName name 'CM_Get_Class_Key_Name_ExW';
|
|
function CM_Get_Depth; external CfgMgrDllName name 'CM_Get_Depth';
|
|
function CM_Get_Depth_Ex; external CfgMgrDllName name 'CM_Get_Depth_Ex';
|
|
function CM_Get_Device_ID; external CfgMgrDllName name 'CM_Get_Device_ID' + NameSuffix;
|
|
function CM_Get_Device_IDA; external CfgMgrDllName name 'CM_Get_Device_IDA';
|
|
function CM_Get_Device_IDW; external CfgMgrDllName name 'CM_Get_Device_IDW';
|
|
function CM_Get_Device_ID_Ex; external CfgMgrDllName name 'CM_Get_Device_ID_Ex' + NameSuffix;
|
|
function CM_Get_Device_ID_ExA; external CfgMgrDllName name 'CM_Get_Device_ID_ExA';
|
|
function CM_Get_Device_ID_ExW; external CfgMgrDllName name 'CM_Get_Device_ID_ExW';
|
|
function CM_Get_Device_ID_List; external CfgMgrDllName name 'CM_Get_Device_ID_List' + NameSuffix;
|
|
function CM_Get_Device_ID_ListA; external CfgMgrDllName name 'CM_Get_Device_ID_ListA';
|
|
function CM_Get_Device_ID_ListW; external CfgMgrDllName name 'CM_Get_Device_ID_ListW';
|
|
function CM_Get_Device_ID_List_Ex; external CfgMgrDllName name 'CM_Get_Device_ID_List_Ex' + NameSuffix;
|
|
function CM_Get_Device_ID_List_ExA; external CfgMgrDllName name 'CM_Get_Device_ID_List_ExA';
|
|
function CM_Get_Device_ID_List_ExW; external CfgMgrDllName name 'CM_Get_Device_ID_List_ExW';
|
|
function CM_Get_Device_ID_List_Size; external CfgMgrDllName name 'CM_Get_Device_ID_List_Size' + NameSuffix;
|
|
function CM_Get_Device_ID_List_SizeA; external CfgMgrDllName name 'CM_Get_Device_ID_List_SizeA';
|
|
function CM_Get_Device_ID_List_SizeW; external CfgMgrDllName name 'CM_Get_Device_ID_List_SizeW';
|
|
function CM_Get_Device_ID_List_Size_Ex; external CfgMgrDllName name 'CM_Get_Device_ID_List_Size_Ex' + NameSuffix;
|
|
function CM_Get_Device_ID_List_Size_ExA; external CfgMgrDllName name 'CM_Get_Device_ID_List_Size_ExA';
|
|
function CM_Get_Device_ID_List_Size_ExW; external CfgMgrDllName name 'CM_Get_Device_ID_List_Size_ExW';
|
|
function CM_Get_Device_ID_Size; external CfgMgrDllName name 'CM_Get_Device_ID_Size';
|
|
function CM_Get_Device_ID_Size_Ex; external CfgMgrDllName name 'CM_Get_Device_ID_Size_Ex';
|
|
function CM_Get_DevNode_Registry_Property; external CfgMgrDllName name 'CM_Get_DevNode_Registry_Property' + NameSuffix;
|
|
function CM_Get_DevNode_Registry_PropertyA; external CfgMgrDllName name 'CM_Get_DevNode_Registry_PropertyA';
|
|
function CM_Get_DevNode_Registry_PropertyW; external CfgMgrDllName name 'CM_Get_DevNode_Registry_PropertyW';
|
|
function CM_Get_DevNode_Registry_Property_Ex; external CfgMgrDllName name 'CM_Get_DevNode_Registry_Property_Ex' + NameSuffix;
|
|
function CM_Get_DevNode_Registry_Property_ExA; external CfgMgrDllName name 'CM_Get_DevNode_Registry_Property_ExA';
|
|
function CM_Get_DevNode_Registry_Property_ExW; external CfgMgrDllName name 'CM_Get_DevNode_Registry_Property_ExW';
|
|
function CM_Get_DevInst_Registry_Property; external CfgMgrDllName name 'CM_Get_DevNode_Registry_Property' + NameSuffix;
|
|
function CM_Get_DevInst_Registry_PropertyA; external CfgMgrDllName name 'CM_Get_DevNode_Registry_PropertyA';
|
|
function CM_Get_DevInst_Registry_PropertyW; external CfgMgrDllName name 'CM_Get_DevNode_Registry_PropertyW';
|
|
function CM_Get_DevInst_Registry_Property_Ex; external CfgMgrDllName name 'CM_Get_DevNode_Registry_Property_Ex' + NameSuffix;
|
|
function CM_Get_DevInst_Registry_Property_ExA; external CfgMgrDllName name 'CM_Get_DevNode_Registry_Property_ExA';
|
|
function CM_Get_DevInst_Registry_Property_ExW; external CfgMgrDllName name 'CM_Get_DevNode_Registry_Property_ExW';
|
|
{$IFDEF WINXP_UP}
|
|
function CM_Get_DevNode_Custom_Property; external SetupApiDllName name 'CM_Get_DevNode_Custom_Property' + NameSuffix;
|
|
function CM_Get_DevNode_Custom_PropertyA; external SetupApiDllName name 'CM_Get_DevNode_Custom_PropertyA';
|
|
function CM_Get_DevNode_Custom_PropertyW; external SetupApiDllName name 'CM_Get_DevNode_Custom_PropertyW';
|
|
function CM_Get_DevNode_Custom_Property_Ex; external SetupApiDllName name 'CM_Get_DevNode_Custom_Property_Ex' + NameSuffix;
|
|
function CM_Get_DevNode_Custom_Property_ExA; external SetupApiDllName name 'CM_Get_DevNode_Custom_Property_ExA';
|
|
function CM_Get_DevNode_Custom_Property_ExW; external SetupApiDllName name 'CM_Get_DevNode_Custom_Property_ExW';
|
|
function CM_Get_DevInst_Custom_Property; external SetupApiDllName name 'CM_Get_DevNode_Custom_Property' + NameSuffix;
|
|
function CM_Get_DevInst_Custom_PropertyA; external SetupApiDllName name 'CM_Get_DevNode_Custom_PropertyA';
|
|
function CM_Get_DevInst_Custom_PropertyW; external SetupApiDllName name 'CM_Get_DevNode_Custom_PropertyW';
|
|
function CM_Get_DevInst_Custom_Property_Ex; external SetupApiDllName name 'CM_Get_DevNode_Custom_Property_Ex' + NameSuffix;
|
|
function CM_Get_DevInst_Custom_Property_ExA; external SetupApiDllName name 'CM_Get_DevNode_Custom_Property_ExA';
|
|
function CM_Get_DevInst_Custom_Property_ExW; external SetupApiDllName name 'CM_Get_DevNode_Custom_Property_ExW';
|
|
{$ENDIF WINXP_UP}
|
|
function CM_Get_DevNode_Status; external CfgMgrDllName name 'CM_Get_DevNode_Status';
|
|
function CM_Get_DevInst_Status; external CfgMgrDllName name 'CM_Get_DevNode_Status';
|
|
function CM_Get_DevNode_Status_Ex; external CfgMgrDllName name 'CM_Get_DevNode_Status_Ex';
|
|
function CM_Get_DevInst_Status_Ex; external CfgMgrDllName name 'CM_Get_DevNode_Status_Ex';
|
|
function CM_Get_First_Log_Conf; external CfgMgrDllName name 'CM_Get_First_Log_Conf';
|
|
function CM_Get_First_Log_Conf_Ex; external CfgMgrDllName name 'CM_Get_First_Log_Conf_Ex';
|
|
function CM_Get_Global_State; external CfgMgrDllName name 'CM_Get_Global_State';
|
|
function CM_Get_Global_State_Ex; external CfgMgrDllName name 'CM_Get_Global_State_Ex';
|
|
function CM_Get_Hardware_Profile_Info; external CfgMgrDllName name 'CM_Get_Hardware_Profile_Info' + NameSuffix;
|
|
function CM_Get_Hardware_Profile_InfoA; external CfgMgrDllName name 'CM_Get_Hardware_Profile_InfoA';
|
|
function CM_Get_Hardware_Profile_Info_Ex; external CfgMgrDllName name 'CM_Get_Hardware_Profile_Info_Ex' + NameSuffix;
|
|
function CM_Get_Hardware_Profile_Info_ExA; external CfgMgrDllName name 'CM_Get_Hardware_Profile_Info_ExA';
|
|
function CM_Get_Hardware_Profile_InfoW; external CfgMgrDllName name 'CM_Get_Hardware_Profile_InfoW';
|
|
function CM_Get_Hardware_Profile_Info_ExW; external CfgMgrDllName name 'CM_Get_Hardware_Profile_Info_ExW';
|
|
function CM_Get_HW_Prof_Flags; external CfgMgrDllName name 'CM_Get_HW_Prof_Flags' + NameSuffix;
|
|
function CM_Get_HW_Prof_FlagsA; external CfgMgrDllName name 'CM_Get_HW_Prof_FlagsA';
|
|
function CM_Get_HW_Prof_FlagsW; external CfgMgrDllName name 'CM_Get_HW_Prof_FlagsW';
|
|
function CM_Get_HW_Prof_Flags_Ex; external CfgMgrDllName name 'CM_Get_HW_Prof_Flags_Ex' + NameSuffix;
|
|
function CM_Get_HW_Prof_Flags_ExA; external CfgMgrDllName name 'CM_Get_HW_Prof_Flags_ExA';
|
|
function CM_Get_HW_Prof_Flags_ExW; external CfgMgrDllName name 'CM_Get_HW_Prof_Flags_ExW';
|
|
{$IFNDEF WINNT4}
|
|
function CM_Get_Device_Interface_Alias; external CfgMgrDllName name 'CM_Get_Device_Interface_Alias' + NameSuffix;
|
|
function CM_Get_Device_Interface_AliasA; external CfgMgrDllName name 'CM_Get_Device_Interface_AliasA';
|
|
function CM_Get_Device_Interface_AliasW; external CfgMgrDllName name 'CM_Get_Device_Interface_AliasW';
|
|
function CM_Get_Device_Interface_Alias_Ex; external CfgMgrDllName name 'CM_Get_Device_Interface_Alias_Ex' + NameSuffix;
|
|
function CM_Get_Device_Interface_Alias_ExA; external CfgMgrDllName name 'CM_Get_Device_Interface_Alias_ExA';
|
|
function CM_Get_Device_Interface_Alias_ExW; external CfgMgrDllName name 'CM_Get_Device_Interface_Alias_ExW';
|
|
function CM_Get_Device_Interface_List; external CfgMgrDllName name 'CM_Get_Device_Interface_List' + NameSuffix;
|
|
function CM_Get_Device_Interface_ListA; external CfgMgrDllName name 'CM_Get_Device_Interface_ListA';
|
|
function CM_Get_Device_Interface_ListW; external CfgMgrDllName name 'CM_Get_Device_Interface_ListW';
|
|
function CM_Get_Device_Interface_List_Ex; external CfgMgrDllName name 'CM_Get_Device_Interface_List_Ex' + NameSuffix;
|
|
function CM_Get_Device_Interface_List_ExA; external CfgMgrDllName name 'CM_Get_Device_Interface_List_ExA';
|
|
function CM_Get_Device_Interface_List_ExW; external CfgMgrDllName name 'CM_Get_Device_Interface_List_ExW';
|
|
function CM_Get_Device_Interface_List_Size; external CfgMgrDllName name 'CM_Get_Device_Interface_List_Size' + NameSuffix;
|
|
function CM_Get_Device_Interface_List_SizeA; external CfgMgrDllName name 'CM_Get_Device_Interface_List_SizeA';
|
|
function CM_Get_Device_Interface_List_SizeW; external CfgMgrDllName name 'CM_Get_Device_Interface_List_SizeW';
|
|
function CM_Get_Device_Interface_List_Size_Ex; external CfgMgrDllName name 'CM_Get_Device_Interface_List_Size_Ex' + NameSuffix;
|
|
function CM_Get_Device_Interface_List_Size_ExA; external CfgMgrDllName name 'CM_Get_Device_Interface_List_Size_ExA';
|
|
function CM_Get_Device_Interface_List_Size_ExW; external CfgMgrDllName name 'CM_Get_Device_Interface_List_Size_ExW';
|
|
function CM_Get_Log_Conf_Priority; external CfgMgrDllName name 'CM_Get_Log_Conf_Priority';
|
|
function CM_Get_Log_Conf_Priority_Ex; external CfgMgrDllName name 'CM_Get_Log_Conf_Priority_Ex';
|
|
{$ENDIF !WINNT4}
|
|
function CM_Get_Next_Log_Conf; external CfgMgrDllName name 'CM_Get_Next_Log_Conf';
|
|
function CM_Get_Next_Log_Conf_Ex; external CfgMgrDllName name 'CM_Get_Next_Log_Conf_Ex';
|
|
function CM_Get_Parent; external CfgMgrDllName name 'CM_Get_Parent';
|
|
function CM_Get_Parent_Ex; external CfgMgrDllName name 'CM_Get_Parent_Ex';
|
|
function CM_Get_Res_Des_Data; external CfgMgrDllName name 'CM_Get_Res_Des_Data';
|
|
function CM_Get_Res_Des_Data_Ex; external CfgMgrDllName name 'CM_Get_Res_Des_Data_Ex';
|
|
function CM_Get_Res_Des_Data_Size; external CfgMgrDllName name 'CM_Get_Res_Des_Data_Size';
|
|
function CM_Get_Res_Des_Data_Size_Ex; external CfgMgrDllName name 'CM_Get_Res_Des_Data_Size_Ex';
|
|
function CM_Get_Sibling; external CfgMgrDllName name 'CM_Get_Sibling';
|
|
function CM_Get_Sibling_Ex; external CfgMgrDllName name 'CM_Get_Sibling_Ex';
|
|
function CM_Get_Version; external CfgMgrDllName name 'CM_Get_Version';
|
|
function CM_Get_Version_Ex; external CfgMgrDllName name 'CM_Get_Version_Ex';
|
|
{$IFDEF WINXP_UP}
|
|
function CM_Is_Version_Available; external SetupApiDllName name 'CM_Is_Version_Available';
|
|
function CM_Is_Version_Available_Ex; external SetupApiDllName name 'CM_Is_Version_Available_Ex';
|
|
{$ENDIF WINXP_UP}
|
|
function CM_Intersect_Range_List; external CfgMgrDllName name 'CM_Intersect_Range_List';
|
|
function CM_Invert_Range_List; external CfgMgrDllName name 'CM_Invert_Range_List';
|
|
function CM_Locate_DevNode; external CfgMgrDllName name 'CM_Locate_DevNode' + NameSuffix;
|
|
function CM_Locate_DevNodeA; external CfgMgrDllName name 'CM_Locate_DevNodeA';
|
|
function CM_Locate_DevNodeW; external CfgMgrDllName name 'CM_Locate_DevNodeW';
|
|
function CM_Locate_DevNode_Ex; external CfgMgrDllName name 'CM_Locate_DevNode_Ex' + NameSuffix;
|
|
function CM_Locate_DevNode_ExA; external CfgMgrDllName name 'CM_Locate_DevNode_ExA';
|
|
function CM_Locate_DevNode_ExW; external CfgMgrDllName name 'CM_Locate_DevNode_ExW';
|
|
function CM_Locate_DevInst; external CfgMgrDllName name 'CM_Locate_DevNode' + NameSuffix;
|
|
function CM_Locate_DevInstA; external CfgMgrDllName name 'CM_Locate_DevNodeA';
|
|
function CM_Locate_DevInstW; external CfgMgrDllName name 'CM_Locate_DevNodeW';
|
|
function CM_Locate_DevInst_Ex; external CfgMgrDllName name 'CM_Locate_DevNode_Ex' + NameSuffix;
|
|
function CM_Locate_DevInst_ExA; external CfgMgrDllName name 'CM_Locate_DevNode_ExA';
|
|
function CM_Locate_DevInst_ExW; external CfgMgrDllName name 'CM_Locate_DevNode_ExW';
|
|
function CM_Merge_Range_List; external CfgMgrDllName name 'CM_Merge_Range_List';
|
|
function CM_Modify_Res_Des; external CfgMgrDllName name 'CM_Modify_Res_Des';
|
|
function CM_Modify_Res_Des_Ex; external CfgMgrDllName name 'CM_Modify_Res_Des_Ex';
|
|
function CM_Move_DevNode; external CfgMgrDllName name 'CM_Move_DevNode';
|
|
function CM_Move_DevInst; external CfgMgrDllName name 'CM_Move_DevNode';
|
|
function CM_Move_DevNode_Ex; external CfgMgrDllName name 'CM_Move_DevNode_Ex';
|
|
function CM_Move_DevInst_Ex; external CfgMgrDllName name 'CM_Move_DevNode_Ex';
|
|
function CM_Next_Range; external CfgMgrDllName name 'CM_Next_Range';
|
|
function CM_Get_Next_Res_Des; external CfgMgrDllName name 'CM_Get_Next_Res_Des';
|
|
function CM_Get_Next_Res_Des_Ex; external CfgMgrDllName name 'CM_Get_Next_Res_Des_Ex';
|
|
function CM_Open_Class_Key; external CfgMgrDllName name 'CM_Open_Class_Key' + NameSuffix;
|
|
function CM_Open_Class_KeyA; external CfgMgrDllName name 'CM_Open_Class_KeyA';
|
|
function CM_Open_Class_KeyW; external CfgMgrDllName name 'CM_Open_Class_KeyW';
|
|
function CM_Open_Class_Key_Ex; external CfgMgrDllName name 'CM_Open_Class_Key_Ex' + NameSuffix;
|
|
function CM_Open_Class_Key_ExA; external CfgMgrDllName name 'CM_Open_Class_Key_ExA';
|
|
function CM_Open_Class_Key_ExW; external CfgMgrDllName name 'CM_Open_Class_Key_ExW';
|
|
function CM_Open_DevNode_Key; external CfgMgrDllName name 'CM_Open_DevNode_Key';
|
|
function CM_Open_DevInst_Key; external CfgMgrDllName name 'CM_Open_DevNode_Key';
|
|
function CM_Open_DevNode_Key_Ex; external CfgMgrDllName name 'CM_Open_DevNode_Key_Ex';
|
|
function CM_Open_DevInst_Key_Ex; external CfgMgrDllName name 'CM_Open_DevNode_Key_Ex';
|
|
function CM_Query_Arbitrator_Free_Data; external CfgMgrDllName name 'CM_Query_Arbitrator_Free_Data';
|
|
function CM_Query_Arbitrator_Free_Data_Ex; external CfgMgrDllName name 'CM_Query_Arbitrator_Free_Data_Ex';
|
|
function CM_Query_Arbitrator_Free_Size; external CfgMgrDllName name 'CM_Query_Arbitrator_Free_Size';
|
|
function CM_Query_Arbitrator_Free_Size_Ex; external CfgMgrDllName name 'CM_Query_Arbitrator_Free_Size_Ex';
|
|
function CM_Query_Remove_SubTree; external CfgMgrDllName name 'CM_Query_Remove_SubTree';
|
|
function CM_Query_Remove_SubTree_Ex; external CfgMgrDllName name 'CM_Query_Remove_SubTree_Ex';
|
|
{$IFDEF WIN2000_UP}
|
|
function CM_Query_And_Remove_SubTree; external CfgMgrDllName name 'CM_Query_And_Remove_SubTree' + NameSuffix;
|
|
function CM_Query_And_Remove_SubTreeA; external CfgMgrDllName name 'CM_Query_And_Remove_SubTreeA';
|
|
function CM_Query_And_Remove_SubTree_Ex; external CfgMgrDllName name 'CM_Query_And_Remove_SubTree_Ex' + NameSuffix;
|
|
function CM_Query_And_Remove_SubTree_ExA; external CfgMgrDllName name 'CM_Query_And_Remove_SubTree_ExA';
|
|
function CM_Query_And_Remove_SubTreeW; external CfgMgrDllName name 'CM_Query_And_Remove_SubTreeW';
|
|
function CM_Query_And_Remove_SubTree_ExW; external CfgMgrDllName name 'CM_Query_And_Remove_SubTree_ExW';
|
|
function CM_Request_Device_Eject; external SetupApiDllName name 'CM_Request_Device_Eject' + NameSuffix;
|
|
function CM_Request_Device_EjectA; external SetupApiDllName name 'CM_Request_Device_EjectA';
|
|
function CM_Request_Device_EjectW; external SetupApiDllName name 'CM_Request_Device_EjectW';
|
|
function CM_Request_Device_Eject_Ex; external SetupApiDllName name 'CM_Request_Device_Eject_Ex' + NameSuffix;
|
|
function CM_Request_Device_Eject_ExA; external SetupApiDllName name 'CM_Request_Device_Eject_ExA';
|
|
function CM_Request_Device_Eject_ExW; external SetupApiDllName name 'CM_Request_Device_Eject_ExW';
|
|
{$ENDIF WIN2000_UP}
|
|
function CM_Reenumerate_DevNode; external CfgMgrDllName name 'CM_Reenumerate_DevNode';
|
|
function CM_Reenumerate_DevInst; external CfgMgrDllName name 'CM_Reenumerate_DevNode';
|
|
function CM_Reenumerate_DevNode_Ex; external CfgMgrDllName name 'CM_Reenumerate_DevNode_Ex';
|
|
function CM_Reenumerate_DevInst_Ex; external CfgMgrDllName name 'CM_Reenumerate_DevNode_Ex';
|
|
{$IFNDEF WINNT4}
|
|
function CM_Register_Device_Interface; external CfgMgrDllName name 'CM_Register_Device_Interface' + NameSuffix;
|
|
function CM_Register_Device_InterfaceA; external CfgMgrDllName name 'CM_Register_Device_InterfaceA';
|
|
function CM_Register_Device_InterfaceW; external CfgMgrDllName name 'CM_Register_Device_InterfaceW';
|
|
function CM_Register_Device_Interface_Ex; external CfgMgrDllName name 'CM_Register_Device_Interface_Ex' + NameSuffix;
|
|
function CM_Register_Device_Interface_ExA; external CfgMgrDllName name 'CM_Register_Device_Interface_ExA';
|
|
function CM_Register_Device_Interface_ExW; external CfgMgrDllName name 'CM_Register_Device_Interface_ExW';
|
|
function CM_Set_DevNode_Problem_Ex; external CfgMgrDllName name 'CM_Set_DevNode_Problem_Ex';
|
|
function CM_Set_DevInst_Problem_Ex; external CfgMgrDllName name 'CM_Set_DevNode_Problem_Ex';
|
|
function CM_Set_DevNode_Problem; external CfgMgrDllName name 'CM_Set_DevNode_Problem';
|
|
function CM_Set_DevInst_Problem; external CfgMgrDllName name 'CM_Set_DevNode_Problem';
|
|
function CM_Unregister_Device_Interface; external CfgMgrDllName name 'CM_Unregister_Device_Interface' + NameSuffix;
|
|
function CM_Unregister_Device_InterfaceA; external CfgMgrDllName name 'CM_Unregister_Device_InterfaceA';
|
|
function CM_Unregister_Device_InterfaceW; external CfgMgrDllName name 'CM_Unregister_Device_InterfaceW';
|
|
function CM_Unregister_Device_Interface_Ex; external CfgMgrDllName name 'CM_Unregister_Device_Interface_Ex' + NameSuffix;
|
|
function CM_Unregister_Device_Interface_ExA; external CfgMgrDllName name 'CM_Unregister_Device_Interface_ExA';
|
|
function CM_Unregister_Device_Interface_ExW; external CfgMgrDllName name 'CM_Unregister_Device_Interface_ExW';
|
|
function CM_Register_Device_Driver; external CfgMgrDllName name 'CM_Register_Device_Driver';
|
|
function CM_Register_Device_Driver_Ex; external CfgMgrDllName name 'CM_Register_Device_Driver_Ex';
|
|
{$ENDIF !WINNT4}
|
|
function CM_Remove_SubTree; external CfgMgrDllName name 'CM_Remove_SubTree';
|
|
function CM_Remove_SubTree_Ex; external CfgMgrDllName name 'CM_Remove_SubTree_Ex';
|
|
function CM_Set_DevNode_Registry_Property; external CfgMgrDllName name 'CM_Set_DevNode_Registry_Property' + NameSuffix;
|
|
function CM_Set_DevNode_Registry_PropertyA; external CfgMgrDllName name 'CM_Set_DevNode_Registry_PropertyA';
|
|
function CM_Set_DevNode_Registry_PropertyW; external CfgMgrDllName name 'CM_Set_DevNode_Registry_PropertyW';
|
|
function CM_Set_DevNode_Registry_Property_Ex; external CfgMgrDllName name 'CM_Set_DevNode_Registry_Property_Ex' + NameSuffix;
|
|
function CM_Set_DevNode_Registry_Property_ExA; external CfgMgrDllName name 'CM_Set_DevNode_Registry_Property_ExA';
|
|
function CM_Set_DevNode_Registry_Property_ExW; external CfgMgrDllName name 'CM_Set_DevNode_Registry_Property_ExW';
|
|
function CM_Set_DevInst_Registry_Property; external CfgMgrDllName name 'CM_Set_DevNode_Registry_Property' + NameSuffix;
|
|
function CM_Set_DevInst_Registry_PropertyA; external CfgMgrDllName name 'CM_Set_DevNode_Registry_PropertyA';
|
|
function CM_Set_DevInst_Registry_PropertyW; external CfgMgrDllName name 'CM_Set_DevNode_Registry_PropertyW';
|
|
function CM_Set_DevInst_Registry_Property_Ex; external CfgMgrDllName name 'CM_Set_DevNode_Registry_Property_Ex' + NameSuffix;
|
|
function CM_Set_DevInst_Registry_Property_ExA; external CfgMgrDllName name 'CM_Set_DevNode_Registry_Property_ExA';
|
|
function CM_Set_DevInst_Registry_Property_ExW; external CfgMgrDllName name 'CM_Set_DevNode_Registry_Property_ExW';
|
|
{$IFNDEF WINNT4}
|
|
function CM_Is_Dock_Station_Present; external CfgMgrDllName name 'CM_Is_Dock_Station_Present';
|
|
{$ENDIF !WINNT4}
|
|
{$IFDEF WIN2000_UP}
|
|
function CM_Is_Dock_Station_Present_Ex; external CfgMgrDllName name 'CM_Is_Dock_Station_Present_Ex';
|
|
{$ENDIF WIN2000_UP}
|
|
{$IFNDEF WINNT4}
|
|
function CM_Request_Eject_PC; external CfgMgrDllName name 'CM_Request_Eject_PC';
|
|
{$ENDIF !WINNT4}
|
|
{$IFDEF WIN2000_UP}
|
|
function CM_Request_Eject_PC_Ex; external CfgMgrDllName name 'CM_Request_Eject_PC_Ex';
|
|
{$ENDIF WIN2000_UP}
|
|
function CM_Set_HW_Prof_Flags; external CfgMgrDllName name 'CM_Set_HW_Prof_Flags' + NameSuffix;
|
|
function CM_Set_HW_Prof_FlagsA; external CfgMgrDllName name 'CM_Set_HW_Prof_FlagsA';
|
|
function CM_Set_HW_Prof_FlagsW; external CfgMgrDllName name 'CM_Set_HW_Prof_FlagsW';
|
|
function CM_Set_HW_Prof_Flags_Ex; external CfgMgrDllName name 'CM_Set_HW_Prof_Flags_Ex' + NameSuffix;
|
|
function CM_Set_HW_Prof_Flags_ExA; external CfgMgrDllName name 'CM_Set_HW_Prof_Flags_ExA';
|
|
function CM_Set_HW_Prof_Flags_ExW; external CfgMgrDllName name 'CM_Set_HW_Prof_Flags_ExW';
|
|
function CM_Setup_DevNode; external CfgMgrDllName name 'CM_Setup_DevNode';
|
|
function CM_Setup_DevInst; external CfgMgrDllName name 'CM_Setup_DevNode';
|
|
function CM_Setup_DevNode_Ex; external CfgMgrDllName name 'CM_Setup_DevNode_Ex';
|
|
function CM_Setup_DevInst_Ex; external CfgMgrDllName name 'CM_Setup_DevNode_Ex';
|
|
function CM_Test_Range_Available; external CfgMgrDllName name 'CM_Test_Range_Available';
|
|
function CM_Uninstall_DevNode; external CfgMgrDllName name 'CM_Uninstall_DevNode';
|
|
function CM_Uninstall_DevInst; external CfgMgrDllName name 'CM_Uninstall_DevNode';
|
|
function CM_Uninstall_DevNode_Ex; external CfgMgrDllName name 'CM_Uninstall_DevNode_Ex';
|
|
function CM_Uninstall_DevInst_Ex; external CfgMgrDllName name 'CM_Uninstall_DevNode_Ex';
|
|
function CM_Run_Detection; external CfgMgrDllName name 'CM_Run_Detection';
|
|
function CM_Run_Detection_Ex; external CfgMgrDllName name 'CM_Run_Detection_Ex';
|
|
function CM_Set_HW_Prof; external CfgMgrDllName name 'CM_Set_HW_Prof';
|
|
function CM_Set_HW_Prof_Ex; external CfgMgrDllName name 'CM_Set_HW_Prof_Ex';
|
|
{$IFDEF WIN2000_UP}
|
|
function CM_Query_Resource_Conflict_List; external CfgMgrDllName name 'CM_Query_Resource_Conflict_List';
|
|
function CM_Free_Resource_Conflict_Handle; external CfgMgrDllName name 'CM_Free_Resource_Conflict_Handle';
|
|
function CM_Get_Resource_Conflict_Count; external CfgMgrDllName name 'CM_Get_Resource_Conflict_Count';
|
|
function CM_Get_Resource_Conflict_Details; external CfgMgrDllName name 'CM_Get_Resource_Conflict_Details' + NameSuffix;
|
|
function CM_Get_Resource_Conflict_DetailsA; external CfgMgrDllName name 'CM_Get_Resource_Conflict_DetailsA';
|
|
function CM_Get_Resource_Conflict_DetailsW; external CfgMgrDllName name 'CM_Get_Resource_Conflict_DetailsW';
|
|
function CM_Get_Class_Registry_Property; external CfgMgrDllName name 'CM_Get_Class_Registry_Property' + NameSuffix;
|
|
function CM_Get_Class_Registry_PropertyA; external CfgMgrDllName name 'CM_Get_Class_Registry_PropertyA';
|
|
function CM_Get_Class_Registry_PropertyW; external CfgMgrDllName name 'CM_Get_Class_Registry_PropertyW';
|
|
function CM_Set_Class_Registry_Property; external CfgMgrDllName name 'CM_Set_Class_Registry_Property' + NameSuffix;
|
|
function CM_Set_Class_Registry_PropertyA; external CfgMgrDllName name 'CM_Set_Class_Registry_PropertyA';
|
|
function CM_Set_Class_Registry_PropertyW; external CfgMgrDllName name 'CM_Set_Class_Registry_PropertyW';
|
|
function CM_WaitNoPendingInstallEvents; external CfgMgrDllName name 'CMP_WaitNoPendingInstallEvents';
|
|
function CMP_WaitNoPendingInstallEvents; external CfgMgrDllName name 'CMP_WaitNoPendingInstallEvents';
|
|
{$ENDIF WIN2000_UP}
|
|
|
|
{$ENDIF !CFGMGR32_LINKONREQUEST}
|
|
|
|
end.
|