Compartilhar via


Função SetupDiSetDeviceInterfacePropertyW (setupapi.h)

A função SetupDiSetDeviceInterfaceProperty define uma propriedade de dispositivo de uma interface do dispositivo.

Sintaxe

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
);

Parâmetros

[in] DeviceInfoSet

Um identificador para um conjunto de informações do dispositivo que contém a interface do dispositivo para a qual definir uma propriedade de interface do dispositivo.

[in] DeviceInterfaceData

Um ponteiro para uma estrutura SP_DEVICE_INTERFACE_DATA que representa a interface do dispositivo para a qual definir uma propriedade de interface do dispositivo.

[in] PropertyKey

Um ponteiro para uma estrutura DEVPROPKEY que representa a chave de propriedade do dispositivo da propriedade de interface do dispositivo a ser definida.

[in] PropertyType

Um valor do tipo DEVPROPTYPE que representa o identificador property-data-type da propriedade de interface do dispositivo a ser definida. Para obter mais informações sobre o identificador de tipo de dados de propriedade, consulte a seção Comentários mais adiante neste tópico.

[in, optional] PropertyBuffer

Um ponteiro para um buffer que contém o valor da propriedade da interface do dispositivo. Se a propriedade ou o valor da interface estiver sendo excluído, esse ponteiro deverá ser definido como NULL e PropertyBufferSize deverá ser definido como zero. Para obter mais informações sobre dados de valor de propriedade, consulte a seção Comentários mais adiante neste tópico.

[in] PropertyBufferSize

O tamanho, em bytes, do buffer PropertyBuffer . O tamanho do buffer de propriedade deve ser consistente com o identificador property-data-type fornecido pelo PropertyType. Se PropertyBuffer estiver definido como NULL, PropertyBufferSize deverá ser definido como zero.

[in] Flags

Deve ser definido como zero.

Valor retornado

SetupDiSetDeviceInterfaceProperty retornará TRUE se for bem-sucedido. Caso contrário, essa função retornará FALSE e o erro registrado poderá ser recuperado chamando GetLastError.

A tabela a seguir inclui alguns dos códigos de erro mais comuns que essa função pode registrar.

Código de retorno Descrição
ERROR_INVALID_FLAGS
O valor de Flags não é zero.
ERROR_INVALID_HANDLE
O conjunto de informações do dispositivo especificado por DevInfoSet não é válido.
ERROR_INVALID_PARAMETER
Um parâmetro fornecido não é válido. Uma possibilidade é que a interface do dispositivo especificada por DeviceInterfaceData não seja válida.
ERROR_INVALID_REG_PROPERTY
A chave de propriedade fornecida por PropertyKey não é válida.
ERROR_INVALID_DATA
Um valor de dados não especificado não era válido. Esse erro poderá ser registrado se o nome simbólico do link da interface do dispositivo não for válido ou o identificador de tipo de dados de propriedade não for válido.
ERROR_INVALID_USER_BUFFER
Um buffer de usuário não é válido. Uma possibilidade é que PropertyBuffer seja NULL e PropertBufferSize não seja zero.
ERROR_NO_SUCH_DEVICE_INTERFACE
A interface do dispositivo especificada por DeviceInterfaceData não existe.
ERROR_INSUFFICIENT_BUFFER
Um buffer de dados interno que foi passado para uma chamada do sistema era muito pequeno.
ERROR_NOT_ENOUGH_MEMORY
Não havia memória do sistema suficiente disponível para concluir a operação.
ERROR_NOT_FOUND
Um elemento interno não especificado não foi encontrado. Uma possibilidade é que uma propriedade a ser excluída não exista.
ERROR_ACCESS_DENIED
O chamador não tem privilégios de Administrador.

Comentários

SetupDiSetDeviceInterfaceProperty faz parte do modelo de propriedade do dispositivo unificado.

SetupAPI dá suporte apenas a uma versão Unicode de SetupDiSetDeviceInterfaceProperty.

Um chamador de SetupDiSetDeviceInterfaceProperty deve ser membro do grupo Administradores para definir uma propriedade de interface do dispositivo.

SetupDiSetDeviceInterfaceProperty impõe requisitos no identificador property-data-type e no valor da propriedade.

Para obter as chaves de propriedade do dispositivo que representam as propriedades do dispositivo definidas para uma interface do dispositivo, chame SetupDiGetDeviceInterfacePropertyKeys.

Para recuperar uma propriedade de interface do dispositivo, chame SetupDiGetDeviceInterfaceProperty.

Requisitos

   
Cliente mínimo com suporte Disponível no Windows Vista e versões posteriores do Windows.
Plataforma de Destino DesktopPara universal, chame CM_Set_Device_Interface_Property
Cabeçalho setupapi.h (inclua Setupapi.h)
Biblioteca Setupapi.lib

Confira também

SetupDiGetDeviceInterfaceProperty

SetupDiGetDeviceInterfacePropertyKeys