Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Функция SetupDiSetDeviceInterfaceProperty задает свойство устройства интерфейса устройства.
Синтаксис
WINSETUPAPI BOOL SetupDiSetDeviceInterfacePropertyW(
[in] HDEVINFO DeviceInfoSet,
[in] PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData,
[in] const DEVPROPKEY *PropertyKey,
[in] DEVPROPTYPE PropertyType,
[in, optional] const PBYTE PropertyBuffer,
[in] DWORD PropertyBufferSize,
[in] DWORD Flags
);
Параметры
[in] DeviceInfoSet
Дескриптор набора сведений об устройстве , содержащего интерфейс устройства, для которого нужно задать свойство интерфейса устройства.
[in] DeviceInterfaceData
Указатель на структуру SP_DEVICE_INTERFACE_DATA , представляющую интерфейс устройства, для которого нужно задать свойство интерфейса устройства.
[in] PropertyKey
Указатель на структуру DEVPROPKEY , представляющую ключ свойства устройства заданного свойства интерфейса устройства.
[in] PropertyType
Значение типа DEVPROPTYPE, представляющее идентификатор типа property-data-type свойства интерфейса устройства для задания. Дополнительные сведения об идентификаторе типа property-data-type см. в разделе Примечания далее в этом разделе.
[in, optional] PropertyBuffer
Указатель на буфер, содержащий значение свойства интерфейса устройства. Если удаляется свойство или значение интерфейса, для этого указателя должно быть задано значение NULL, а для свойства PropertyBufferSize — нулевое значение. Дополнительные сведения о данных значения свойства см. в разделе Примечания далее в этом разделе.
[in] PropertyBufferSize
Размер буфера PropertyBuffer (в байтах). Размер буфера свойств должен соответствовать идентификатору property-data-type, предоставленному свойством PropertyType. Если свойство PropertyBuffer имеет значение NULL, свойство PropertyBufferSize должно быть равно нулю.
[in] Flags
Необходимо задать нулевое значение.
Возвращаемое значение
SetupDiSetDeviceInterfaceProperty возвращает значение TRUE в случае успешного выполнения. В противном случае эта функция возвращает значение FALSE, а зарегистрированную ошибку можно получить, вызвав Метод GetLastError.
В следующей таблице приведены некоторые из наиболее распространенных кодов ошибок, которые эта функция может записывать в журнал.
| Код возврата | Описание |
|---|---|
|
Значение Flags не равно нулю. |
|
Недопустимый набор сведений об устройстве, указанный в DevInfoSet . |
|
Указанный параметр недопустим. Одна из возможных вариантов заключается в том, что интерфейс устройства, указанный в DeviceInterfaceData , недопустим. |
|
Недопустимый ключ свойства, предоставляемый PropertyKey . |
|
Неустановленное значение данных было недопустимым. Эта ошибка может быть зарегистрирована, если недопустимое имя символьной ссылки интерфейса устройства или недопустимый идентификатор property-data-type. |
|
Недопустимый буфер пользователя. Одна из возможных вариантов заключается в том, что СвойствоBuffer имеет значение NULL, а PropertBufferSize не равно нулю. |
|
Интерфейс устройства, заданный параметром DeviceInterfaceData , не существует. |
|
Внутренний буфер данных, переданный в системный вызов, был слишком мал. |
|
Недостаточно системной памяти для завершения операции. |
|
Неустановленный внутренний элемент не найден. Одна из возможных вариантов заключается в том, что удаляемое свойство не существует. |
|
Вызывающий объект не имеет прав администратора. |
Комментарии
SetupDiSetDeviceInterfaceProperty является частью единой модели свойств устройства.
SetupAPI поддерживает только версию Юникода SetupDiSetDeviceInterfaceProperty.
Вызывающий объект SetupDiSetDeviceInterfaceProperty должен быть членом группы Администраторы, чтобы задать свойство интерфейса устройства.
SetupDiSetDeviceInterfaceProperty применяет требования к идентификатору property-data-type и значению свойства.
Чтобы получить ключи свойств устройства, которые представляют свойства устройства, заданные для интерфейса устройства, вызовите SetupDiGetDeviceInterfacePropertyKeys.
Чтобы получить свойство интерфейса устройства, вызовите SetupDiGetDeviceInterfaceProperty.
Требования
| Минимальная версия клиента | Доступно в Windows Vista и более поздних версиях Windows. |
| Целевая платформа | DesktopДля универсального вызова CM_Set_Device_Interface_Property |
| Верхняя часть | setupapi.h (включая Setupapi.h) |
| Библиотека | Setupapi.lib |