Função IoSetDeviceInterfacePropertyData (wdm.h)

A rotina IoSetDeviceInterfacePropertyData modifica o valor atual de uma propriedade de interface do dispositivo.

Sintaxe

NTSTATUS IoSetDeviceInterfacePropertyData(
  [in]           PUNICODE_STRING  SymbolicLinkName,
  [in]           const DEVPROPKEY *PropertyKey,
  [in]           LCID             Lcid,
  [in]           ULONG            Flags,
  [in]           DEVPROPTYPE      Type,
  [in]           ULONG            Size,
  [in, optional] PVOID            Data
);

Parâmetros

[in] SymbolicLinkName

Um ponteiro para uma cadeia de caracteres que identifica a instância da interface do dispositivo. Essa cadeia de caracteres foi obtida de uma chamada anterior para a rotina IoGetDeviceInterfaces, IoGetDeviceInterfaceAlias ou IoRegisterDeviceInterface .

[in] PropertyKey

Um ponteiro para uma estrutura DEVPROPKEY que contém a chave de propriedade da interface do dispositivo.

[in] Lcid

Especifica um identificador de localidade. Defina esse parâmetro como um valor LCID específico do idioma ou para LOCALE_NEUTRAL. O LOCALE_NEUTRAL LCID especifica que a propriedade é neutra em idioma (ou seja, não específica a nenhum idioma). Não defina esse parâmetro como LOCALE_SYSTEM_DEFAULT ou LOCALE_USER_DEFAULT. Para obter mais informações sobre valores LCID específicos do idioma, consulte Estrutura LCID.

[in] Flags

Defina esse parâmetro como PLUGPLAY_PROPERTY_PERSISTENT se o valor da propriedade definido por essa rotina deve persistir entre reinicializações do computador. Caso contrário, defina Sinalizadores como zero.

[in] Type

Defina esse parâmetro como o valor DEVPROPTYPE que especifica o tipo dos dados fornecidos no buffer de dados .

[in] Size

Especifica o tamanho, em bytes, do buffer para o qual os Dados apontam.

[in, optional] Data

Um ponteiro para os dados da propriedade da interface do dispositivo. Defina esse parâmetro como NULL para excluir a propriedade especificada. Se Data não for NULL, a rotina armazenará uma cópia interna do valor da propriedade. O buffer apontado por Dados não precisa permanecer válido após o retorno da chamada.

Retornar valor

IoSetDeviceInterfacePropertyData retornará STATUS_SUCCESS se a chamada tiver sido bem-sucedida. Os possíveis valores retornados por erro incluem os seguintes códigos de status.

Código de retorno Descrição
STATUS_UNSUCCESSFUL O valor LCID especificado não é válido.
STATUS_NOT_IMPLEMENTED Não há suporte para a propriedade especificada.

Comentários

Os drivers de modo kernel usam a rotina IoSetDeviceInterfacePropertyData para modificar as propriedades da interface do dispositivo definidas como parte do modelo de propriedade do dispositivo unificado. Para obter mais informações sobre as propriedades da interface do dispositivo, consulte Propriedades do dispositivo.

Os drivers podem usar a rotina IoGetDeviceInterfacePropertyData para obter o valor atual de uma propriedade de interface do dispositivo.

Os chamadores de IoSetDeviceInterfacePropertyData devem estar em execução em IRQL <= APC_LEVEL no contexto de um thread do sistema.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível para Windows 8 e versões posteriores do Windows.
Plataforma de Destino Universal
Cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Confira também

DEVPROPKEY

DEVPROPTYPE

IoGetDeviceInterfacePropertyData