使用设备安装函数

本部分汇总了 设备安装功能。 通过使用设备安装功能,安装软件可以执行以下类型的操作:

  • 安装驱动程序

  • 处理 DIF 代码。

  • 管理设备信息集。

  • 管理驱动程序列表。

  • 管理设备接口。

  • 管理图标和其他位图。

下表汇总了以下类型的函数:

驱动程序安装函数

设备信息函数

驱动程序信息函数

设备安装处理程序

设备安装自定义函数

安装程序类函数

位图和图标函数

设备接口函数

Windows Vista 及更高版本) (设备属性函数

注册表函数

其他函数

驱动程序安装函数

DiInstallDevice

在系统中存在的 PnP 设备上,安装预装在 驱动程序存储 中的指定驱动程序包。 (Windows Vista 及更高版本的 Windows)

DiUninstallDevice

卸载设备并从系统中删除其设备节点 (devnode) 。 (Windows 7 及更高版本的 Windows)

DiInstallDriver

在驱动程序存储中预安装驱动程序包,然后在系统中存在的匹配 PnP 设备上安装驱动程序包。 (Windows Vista 及更高版本的 Windows)

DiUninstallDriver

从驱动程序存储中删除驱动程序包。 (Windows 10版本 1703 及更高版本的 Windows)

UpdateDriverForPlugAndPlayDevices

汇报安装的驱动程序包,以便匹配系统中存在的 PnP 设备。

DiRollbackDriver

将安装在指定设备上的驱动程序包回滚到为该设备设置的备份驱动程序包。 (Windows Vista 及更高版本的 Windows)

设备信息函数

注意

并非所有版本的 Windows 都支持 SetupApi。 如果可能,应使用较低层 API,例如通过 CfgMgr32.dll提供的 API。 有关提示 ,请参阅从 SetupApi 移植到 CfgMgr32

SetupDiCreateDeviceInfoList

创建空 的设备信息集。 此集可以与类 GUID 相关联。

SetupDiCreateDeviceInfoListEx

创建空的设备信息集。 此集可以与类 GUID 相关联,并且可以用于远程计算机上的设备。

SetupDiCreateDeviceInfo

创建新的设备信息元素,并将其作为新成员添加到指定的设备信息集。

SetupDiOpenDeviceInfo

检索有关现有设备实例的信息,并将其添加到指定的设备信息集。

SetupDiEnumDeviceInfo

返回设备信息集的设备信息元素的上下文结构。

SetupDiGetDeviceInstanceId

检索与设备信息元素关联的设备实例 ID。

SetupDiGetDeviceInfoListClass

如果设备信息集具有关联的类,则检索与设备信息集关联的类 GUID。

SetupDiGetDeviceInfoListDetail

检索与设备信息集关联的信息,包括类 GUID、远程计算机句柄和远程计算机名称。

SetupDiGetClassDevPropertySheets

检索指定设备信息元素或指定设备信息集 的设备设置类 的属性表的句柄。

SetupDiGetClassDevs

返回包含指定类的所有设备的设备信息集。

SetupDiGetClassDevsEx

返回一个设备信息集,其中包含本地或远程计算机上指定类的所有设备。

SetupDiSetSelectedDevice

将指定的设备信息元素设置为设备信息集的当前选定成员。 此函数通常由安装向导使用。

SetupDiGetSelectedDevice

检索指定设备信息集的当前所选设备。

SetupDiRegisterDeviceInfo

向即插即用管理器注册新创建的设备实例。

SetupDiDeleteDeviceInfo

从指定的设备信息集中删除成员。 此函数不会删除实际设备。

SetupDiDestroyDeviceInfoList

销毁设备信息集并释放所有关联的内存。

驱动程序信息函数

SetupDiBuildDriverInfoList

生成与指定设备实例或设备信息集的全局类驱动程序列表关联的驱动程序列表。

SetupDiEnumDriverInfo

枚举驱动程序信息列表的成员。

SetupDiGetDriverInfoDetail

检索指定驱动程序信息元素的详细信息。

SetupDiSetSelectedDriver

将驱动程序列表的指定成员设置为当前选定的驱动程序。 它还可用于重置驱动程序列表,以便没有当前选择的驱动程序。

SetupDiGetSelectedDriver

检索已选为要安装的驱动程序的驱动程序列表的成员。

SetupDiCancelDriverInfoSearch

取消当前正在其他线程中执行的驱动程序列表搜索。

SetupDiDestroyDriverInfoList

销毁驱动程序信息列表。

设备安装处理程序

SetupDiCallClassInstaller

使用指定的安装请求调用相应的类安装程序和任何已注册的共同安装程序。

SetupDiChangeState

DIF_PROPERTYCHANGE请求的默认处理程序。 它可用于更改已安装设备的状态。

SetupDiRegisterCoDeviceInstallers

为指定设备注册 INF 文件中列出的特定于设备的共同安装程序。 此函数是DIF_REGISTER_COINSTALLERS的默认处理程序。

SetupDiInstallDevice

DIF_INSTALLDEVICE请求的默认处理程序。

SetupDiInstallDriverFiles

DIF_INSTALLDEVICEFILES请求的默认处理程序。

SetupDiInstallDeviceInterfaces

DIF_INSTALLINTERFACES请求的默认处理程序。 它安装 DDInstall 中列出的接口。设备 INF 文件的接口 部分。

SetupDiMoveDuplicateDevice

此函数已过时,不能在任何版本的 Microsoft Windows 中使用。

SetupDiRemoveDevice

DIF_REMOVEDEVICE请求的默认处理程序。

SetupDiUnremoveDevice

DIF_UNREMOVE请求的默认处理程序。

SetupDiRegisterDeviceInfo

DIF_REGISTERDEVICE请求的默认处理程序。

SetupDiSelectDevice

DIF_SELECTDEVICE请求的默认处理程序。

SetupDiSelectBestCompatDrv

DIF_SELECTBESTCOMPATDRV请求的默认处理程序。

SetupDiSelectDevice

DIF_SELECTDEVICE请求的默认处理程序。

设备安装自定义函数

SetupDiGetClassInstallParams

检索设备信息集或特定设备信息元素的类安装参数。

SetupDiSetClassInstallParams

设置或清除设备信息集或特定设备信息元素的类安装参数。

SetupDiGetDeviceInstallParams

检索设备信息集或特定设备信息元素的设备安装参数。

SetupDiSetDeviceInstallParams

设置设备信息集或特定设备信息元素的设备安装参数。

SetupDiGetDriverInstallParams

检索指定驱动程序的安装参数。

SetupDiSetDriverInstallParams

设置指定驱动程序的安装参数。

安装程序类函数

SetupDiBuildClassInfoList

返回安装类 GUID 的列表,其中包括系统上安装的每个类。

SetupDiBuildClassInfoListEx

返回安装类 GUID 的列表,其中包括本地系统或远程系统上安装的每个类。

SetupDiGetClassDescription

检索与指定的安装类 GUID 关联的类说明。

SetupDiGetClassDescriptionEx

检索安装在本地或远程计算机上的安装程序类的说明。

SetupDiGetINFClass

检索指定设备 INF 文件的类。

SetupDiClassGuidsFromName

检索与指定类名关联的 GUID。 此列表基于系统上当前安装的类生成。

SetupDiClassGuidsFromNameEx

检索与指定类名关联的 GUID。 此生成的列表包含本地或远程计算机上当前安装的类。

SetupDiClassNameFromGuid

检索与类 GUID 关联的类名称。

SetupDiClassNameFromGuidEx

检索与类 GUID 关联的类名。 类可以安装在本地或远程计算机上。

SetupDiInstallClass

安装指定 INF 文件的 ClassInstall32 部分。

SetupDiInstallClassEx

安装类安装程序或接口类。

SetupDiOpenClassRegKey

打开 设备安装程序类 注册表项或类的特定子项。

SetupDiOpenClassRegKeyEx

打开设备安装程序类注册表项、设备接口类注册表项或类的特定子项。 此函数在本地计算机或远程计算机上打开指定的密钥。

位图和图标函数

SetupDiGetClassImageList

生成包含每个已安装类的位图的图像列表,并在数据结构中返回该列表。

SetupDiGetClassImageListEx

为本地或远程计算机上安装的每个类生成位图的图像列表。

SetupDiGetClassImageIndex

检索指定类的类图像列表中的索引。

SetupDiGetClassBitmapIndex

检索为指定类提供的微型图标的索引。

SetupDiDrawMiniIcon

在请求的位置绘制指定的微型图标。

SetupDiLoadClassIcon

加载指定类的大图标和微型图标。

SetupDiLoadDeviceIcon

加载指定设备的设备图标。 (Windows Vista 及更高版本的 Windows)

SetupDiDestroyClassImageList

销毁类图像列表。

设备接口函数

注意

并非所有版本的 Windows 都支持 SetupApi。 如果可能,应使用较低层 API,例如通过 CfgMgr32.dll提供的 API。 有关提示 ,请参阅从 SetupApi 移植到 CfgMgr32

SetupDiCreateDeviceInterface

(设备接口) 注册设备功能。

SetupDiOpenDeviceInterface

检索有关现有设备接口的信息,并将其添加到指定的设备信息集。

SetupDiGetDeviceInterfaceAlias

返回指定设备接口的别名。

SetupDiGetClassDevs

返回包含指定类的所有设备的设备信息集。

SetupDiGetClassDevsEx

返回一个设备信息集,该信息集包含本地或远程计算机上指定类的所有设备。

SetupDiEnumDeviceInterfaces

返回设备信息集的设备接口元素的上下文结构。 每次调用都会返回有关一个设备接口的信息。

可以重复调用 函数,以获取有关由一个或多个设备公开的多个接口的信息。

SetupDiGetDeviceInterfaceDetail

返回有关特定设备接口的详细信息。

SetupDiCreateDeviceInterfaceRegKey

创建注册表子项,用于存储有关设备接口实例的信息,并返回密钥的句柄。

SetupDiOpenDeviceInterfaceRegKey

打开注册表子项,应用程序和驱动程序使用该子项来存储特定于设备接口实例的信息,并返回密钥的句柄。

SetupDiDeleteDeviceInterfaceRegKey

删除应用程序和驱动程序用来存储特定于设备接口实例的信息的注册表子项。

SetupDiInstallDeviceInterfaces

DIF_INSTALLINTERFACES请求的默认处理程序。 它安装 DDInstall 中列出的接口。设备 INF 文件的接口 部分。

SetupDiRemoveDeviceInterface

从系统中删除已注册的设备接口。

SetupDiDeleteDeviceInterfaceData

从设备信息集中删除设备接口。

SetupDiSetDeviceInterfaceDefault

将指定的设备接口设置为设备类的默认接口。

SetupDiInstallClassEx

安装类安装程序或接口类。

SetupDiOpenClassRegKeyEx

打开 设备安装程序类 注册表项、设备接口类注册表项或类的特定子项。 此函数在本地计算机或远程计算机上打开指定的密钥。

设备属性函数 (Windows Vista 及更高版本)

注意

并非所有版本的 Windows 都支持 SetupApi。 如果可能,应使用较低层 API,例如通过 CfgMgr32.dll提供的 API。 有关提示 ,请参阅从 SetupApi 移植到 CfgMgr32

SetupDiGetClassProperty

检索为设备安装类或设备接口类设置的设备属性。

SetupDiGetClassPropertyEx

检索本地或远程计算机上的设备安装类或设备接口类的类属性。

SetupDiGetClassPropertyKeys

检索设备属性键的数组,这些键表示为设备设置类或设备接口类设置的设备属性。

SetupDiGetClassPropertyKeysEx

检索设备属性键的数组,这些键表示为本地或远程计算机上的设备设置类或设备接口类设置的设备属性。

SetupDiGetDeviceInterfaceProperty

检索为设备接口设置的设备属性。

SetupDiGetDeviceInterfacePropertyKeys

检索表示为设备接口设置的设备属性的设备属性键数组。

SetupDiGetDeviceProperty

检索设备实例属性。

SetupDiGetDevicePropertyKeys

检索设备属性键的数组,这些键表示为设备实例设置的设备属性。

SetupDiSetClassProperty

设置设备安装类或设备接口类的类属性。

SetupDiSetClassPropertyEx

设置本地或远程计算机上的设备安装类或设备接口类的设备属性。

SetupDiSetDeviceInterfaceProperty

设置设备接口的设备属性。

SetupDiSetDeviceProperty

设置设备实例属性。

注册表函数

注意

并非所有版本的 Windows 都支持 SetupApi。 如果可能,应使用较低层 API,例如通过 CfgMgr32.dll提供的 API。 有关提示 ,请参阅从 SetupApi 移植到 CfgMgr32

SetupDiCreateDevRegKey

为特定于设备的配置信息创建注册表存储密钥,并返回密钥的句柄。

SetupDiOpenDevRegKey

打开特定于设备的配置信息的注册表存储密钥,并返回密钥的句柄。

SetupDiDeleteDevRegKey

删除与设备信息元素关联的指定用户可访问的注册表项 () 。

SetupDiOpenClassRegKey

打开安装程序类注册表项或类的特定子项。

SetupDiOpenClassRegKeyEx

打开设备安装程序类注册表项、设备接口类注册表项或类的特定子项。

此函数在本地计算机或远程计算机上打开指定的密钥。

SetupDiCreateDeviceInterfaceRegKey

创建一个非易失性注册表子项,用于存储有关设备接口实例的信息,并返回密钥的句柄。

SetupDiOpenDeviceInterfaceRegKey

打开注册表子项,应用程序和驱动程序使用该子项来存储特定于设备接口实例的信息,并返回密钥的句柄。

SetupDiDeleteDeviceInterfaceRegKey

删除应用程序和驱动程序用来存储特定于设备接口实例的信息的注册表子项。

SetupDiSetDeviceRegistryProperty

设置指定的即插即用设备属性。

SetupDiGetDeviceRegistryProperty

检索指定的即插即用设备属性。

SetupDiGetClassRegistryProperty

从注册表中检索指定的设备类属性。

SetupDiSetClassRegistryProperty

在注册表中设置指定的设备类属性。

其他函数

SetupDiGetActualModelsSection

检索从设备 INF 文件安装设备时要使用的相应修饰 INF 模型部分

SetupDiGetActualSectionToInstall

检索从设备 INF 文件安装设备时要使用的相应 DDInstall 节。

SetupDiGetActualSectionToInstallEx

检索为指定操作系统和处理器体系结构安装设备的 INF DDInstall 部分的名称。

SetupDiGetHwProfileFriendlyName

检索与硬件配置文件 ID 关联的友好名称。

SetupDiGetHwProfileFriendlyNameEx

检索与本地或远程计算机上的硬件配置文件 ID 关联的友好名称。

SetupDiGetHwProfileList

检索当前定义的所有硬件配置文件 ID 的列表。

SetupDiGetHwProfileListEx

检索本地或远程计算机上当前定义的所有硬件配置文件 ID 的列表。

SetupDiRestartDevices

重启指定的设备,或在必要时启动由与指定设备相同的函数和筛选器驱动程序运行的所有设备。