⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cfgmgr32.pas

📁 East make Tray Icon in delphi
💻 PAS
📖 第 1 页 / 共 5 页
字号:
    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}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -