(setupapi.h) SP_PROPCHANGE_PARAMS 结构

SP_PROPCHANGE_PARAMS 结构对应于 DIF_PROPERTYCHANGE 安装请求。

语法

typedef struct _SP_PROPCHANGE_PARAMS {
  SP_CLASSINSTALL_HEADER ClassInstallHeader;
  DWORD                  StateChange;
  DWORD                  Scope;
  DWORD                  HwProfile;
} SP_PROPCHANGE_PARAMS, *PSP_PROPCHANGE_PARAMS;

成员

ClassInstallHeader

一个安装请求标头,其中包含请求的标头大小和 DIF 代码。 请参阅 SP_CLASSINSTALL_HEADER

StateChange

状态更改操作。 可以是以下其中一个值:

DICS_ENABLE

设备正在启用。

对于此状态更改,如果指定 了DICS_FLAG_GLOBAL 标志,Windows 将启用设备。

如果指定 了DICS_FLAG_CONFIGSPECIFIC 标志并指定了当前硬件配置文件,则 Windows 将启用该设备。 如果指定 了DICS_FLAG_CONFIGSPECIFIC 而不是当前硬件配置文件,则 Windows 在注册表中设置一些标志,并且不会更改设备的状态。 当指定的配置文件成为当前配置文件时,Windows 将更改设备状态。

DICS_DISABLE

正在禁用设备。

对于此状态更改,如果指定 了DICS_FLAG_GLOBAL 标志,Windows 将禁用设备。

如果指定 了DICS_FLAG_CONFIGSPECIFIC 标志并指定了当前硬件配置文件,则 Windows 将禁用该设备。 如果指定 了DICS_FLAG_CONFIGSPECIFIC 而不是当前硬件配置文件,则 Windows 在注册表中设置一些标志,并且不会更改设备的状态。

DICS_PROPCHANGE

设备的属性已更改。

对于此状态更改,Windows 会忽略 范围 信息(只要它是一个有效值),并停止并重启设备。

DICS_START

如果请求针对当前活动的硬件配置文件) ,则 (启动设备。

必须DICS_FLAG_CONFIGSPECIFIC DICS_START。 不能全局执行该更改。

仅当指定了当前硬件配置文件时,Windows 才会启动设备。 否则,Windows 将设置注册表标志,并且不会更改设备的状态。

DICS_STOP

设备正在停止。 驱动程序堆栈将被卸载,并且将为设备设置CSCONFIGFLAG_DO_NOT_START标志。

必须DICS_FLAG_CONFIGSPECIFIC DICS_STOP。 不能全局执行该更改。

仅当指定了当前硬件配置文件时,Windows 才会停止设备。 否则,Windows 将设置注册表标志,并且不会更改设备的状态。

组件不应指定DICS_STOP或DICS_START。 相反,他们应使用DICS_PROPCHANGE来停止并重启设备,使设备配置更改生效。

Scope

指定设备属性更改范围的标志。 可以是以下值之一:

DICS_FLAG_GLOBAL

在所有硬件配置文件中进行更改。

DICS_FLAG_CONFIGSPECIFIC

仅在指定的配置文件中进行更改。

以下标志已过时:

DICS_FLAG_CONFIGGENERAL

HwProfile

提供特定于配置文件的更改的硬件配置文件 ID。 零指定当前硬件配置文件。

要求

要求
Header setupapi.h (包括 Setupapi.h)

另请参阅

DIF_PROPERTYCHANGE

SP_CLASSINSTALL_HEADER

SetupDiCallClassInstaller

SetupDiChangeState