SetupDiSetSelectedDriverA 函数 (setupapi.h)

SetupDiSetSelectedDriver 函数集或重置设备信息元素的所选驱动程序或设备信息集的所选类驱动程序。

语法

WINSETUPAPI BOOL SetupDiSetSelectedDriverA(
  [in]      HDEVINFO           DeviceInfoSet,
  [in, out] PSP_DEVINFO_DATA   DeviceInfoData,
  [in, out] PSP_DRVINFO_DATA_A DriverInfoData
);

参数

[in] DeviceInfoSet

设备信息集的句柄 包含驱动程序列表,从列表中选择设备信息元素的驱动程序或设备信息集。

[in, out] DeviceInfoData

指向 SP_DEVINFO_DATA 结构的指针,该结构指定 DeviceInfoSet中的设备信息元素。 此参数是可选的,可以 NULL。 如果指定此参数,SetupDiSetSelectedDriver 设置或重置指定设备的所选驱动程序。 如果此参数 NULLSetupDiSetSelectedDriver 集或重置,则 DeviceInfoSet的所选类驱动程序。

[in, out] DriverInfoData

指向 SP_DRVINFO_DATA 结构的指针,该结构指定要选择的驱动程序。 此参数是可选的,可以 NULL。 如果提供了此参数和 DeviceInfoData,则指定的驱动程序必须是与 deviceInfoData关联的驱动程序列表的成员。 如果指定此参数并且 DeviceInfoDataNULL,则驱动程序必须是 DeviceInfoSet的全局类驱动程序列表的成员。 如果此参数 NULL,则为设备信息元素重置所选驱动程序;如果指定了 deviceInfoData ,或者如果 DeviceInfoData NULL,则为设备信息集。

如果 DriverInfoData。保留NULL,调用方请求搜索具有指定参数的驱动程序节点(DriverType说明ProviderName)。 如果找到匹配项,则选择该驱动程序节点。 输出上更新 保留 字段,以反映找到匹配的实际驱动程序节点。 如果未找到匹配项,该函数将失败,并且调用 GetLastError 将返回ERROR_INVALID_PARAMETER。

返回值

如果函数成功,则返回 TRUE。 否则,它会返回 FALSE,可以通过调用 getLastError来检索记录的错误。

言论

如果 SetupDiSetSelectedDriver 的调用方 是 Administrators 组的成员,则设备类设置为所选驱动程序的类,前提是这两个类不同。

如果 DriverInfoDataNULLSetupDiSetSelectedDriver 重置所选驱动程序。 因此,没有选定的驱动程序。

注意

setupapi.h 标头将 SetupDiSetSelectedDriver 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Microsoft Windows 2000 及更高版本的 Windows 中可用。
目标平台 桌面
标头 setupapi.h (包括 Setupapi.h)
Setupapi.lib

另请参阅

SetupDiGetSelectedDriver