SetupDiSetClassInstallParamsA 函数 (setupapi.h)
SetupDiSetClassInstallParams 函数为设备信息集或特定设备信息元素设置或清除类安装参数。
语法
WINSETUPAPI BOOL SetupDiSetClassInstallParamsA(
[in] HDEVINFO DeviceInfoSet,
[in, optional] PSP_DEVINFO_DATA DeviceInfoData,
[in, optional] PSP_CLASSINSTALL_HEADER ClassInstallParams,
[in] DWORD ClassInstallParamsSize
);
参数
[in] DeviceInfoSet
要为其设置类安装参数 的设备信息集 的句柄。
[in, optional] DeviceInfoData
指向 SP_DEVINFO_DATA 结构的指针,该结构表示要为其设置类安装参数的设备。 此参数是可选的,可以为 NULL。 如果指定此参数, SetupDiSetClassInstallParams 将设置指定设备的类安装参数。 如果此参数为 NULL, 则 SetupDiSetClassInstallParams 将设置与 DeviceInfoSet 关联的类安装参数。
[in, optional] ClassInstallParams
指向缓冲区的指针,该缓冲区包含要使用的新类安装参数。 此缓冲区开头的 SP_CLASSINSTALL_HEADER 结构必须将其 cbSize 字段设置为 size of (SP_CLASSINSTALL_HEADER) 并且 InstallFunction 字段必须设置为反映缓冲区其余部分中包含的参数类型的DI_FUNCTION代码。
如果未指定 ClassInstallParams ,则会为指定的设备信息集或元素清除当前类安装参数(如果有)。
[in] ClassInstallParamsSize
ClassInstallParams 缓冲区的大小(以字节为单位)。 如果未 (提供缓冲区,则) 清除类安装参数, ClassInstallParamsSize 必须为 0。
返回值
如果成功,该函数将返回 TRUE 。 否则,它将返回 FALSE ,并且可以通过调用 GetLastError 来检索记录的错误。
注解
在进行任何更改之前,会验证所有参数。 因此,返回值为 FALSE 表示未修改任何参数。
设置类安装参数的一个副作用是设置DI_CLASSINSTALLPARAMS标志。 如果调用方想要设置参数,但禁用其使用,则必须通过调用 SetupDiSetDeviceInstallParams 来清除此标志。
如果清除类安装参数,则会重置DI_CLASSINSTALLPARAMS标志。
注意
setupapi.h 标头将 SetupDiSetClassInstallParams 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
最低受支持的客户端 | 在 Microsoft Windows 2000 及更高版本的 Windows 中可用。 |
目标平台 | 桌面 |
标头 | setupapi.h (包括 Setupapi.h) |
Library | Setupapi.lib |