структура SP_PROPCHANGE_PARAMS (setupapi.h)
Структура 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
Устройство включено.
Для этого изменения состояния Windows включает устройство, если указан флаг DICS_FLAG_GLOBAL .
Если указан флаг DICS_FLAG_CONFIGSPECIFIC и указан текущий профиль оборудования, Windows включает устройство. Если указан DICS_FLAG_CONFIGSPECIFIC , а не текущий профиль оборудования, Windows устанавливает некоторые флаги в реестре и не изменяет состояние устройства. Windows изменит состояние устройства, когда указанный профиль станет текущим.
DICS_DISABLE
Устройство отключено.
Для этого изменения состояния Windows отключает устройство, если указан флаг DICS_FLAG_GLOBAL .
Если указан флаг DICS_FLAG_CONFIGSPECIFIC и указан текущий профиль оборудования, Windows отключает устройство. Если указан DICS_FLAG_CONFIGSPECIFIC , а не текущий профиль оборудования, Windows устанавливает некоторые флаги в реестре и не изменяет состояние устройства.
DICS_PROPCHANGE
Свойства устройства изменились.
При этом изменении состояния Windows игнорирует сведения о области , если это допустимое значение, и останавливает и перезапускает устройство.
DICS_START
Устройство запускается (если запрос на текущий активный профиль оборудования).
DICS_START должно быть DICS_FLAG_CONFIGSPECIFIC. Это изменение невозможно выполнить глобально.
Windows запускает устройство только в том случае, если указан текущий профиль оборудования. В противном случае Windows устанавливает флаг реестра и не изменяет состояние устройства.
DICS_STOP
Устройство останавливается. Стек драйверов будет выгружен, а для устройства будет установлен флаг CSCONFIGFLAG_DO_NOT_START.
DICS_STOP должно быть DICS_FLAG_CONFIGSPECIFIC. Это изменение невозможно выполнить глобально.
Windows останавливает устройство, только если указан текущий профиль оборудования. В противном случае Windows устанавливает флаг реестра и не изменяет состояние устройства.
Компоненты не должны указывать DICS_STOP или DICS_START. Вместо этого они должны использовать DICS_PROPCHANGE для остановки и перезапуска устройства, чтобы изменения в конфигурации устройства вступили в силу.
Scope
Флаги, указывающие область изменения свойства устройства. Может применяться один из перечисленных ниже типов.
DICS_FLAG_GLOBAL
Внесите изменения во все профили оборудования.
DICS_FLAG_CONFIGSPECIFIC
Внесите изменения только в указанный профиль.
Следующий флаг устарел:
DICS_FLAG_CONFIGGENERAL
HwProfile
Предоставляет идентификатор профиля оборудования для изменений, относящихся к конкретному профилю. Ноль указывает текущий профиль оборудования.
Требования
Требование | Значение |
---|---|
Заголовок | setupapi.h (включая Setupapi.h) |