Share via


Método IDeviceSpecificProperty::GetValue (devicetopology.h)

O método GetValue obtém o valor atual da propriedade específica do dispositivo.

Sintaxe

HRESULT GetValue(
  [out] void  *pvValue,
        DWORD *pcbValue
);

Parâmetros

[out] pvValue

Ponteiro para um buffer alocado pelo chamador no qual o método grava o valor da propriedade.

pcbValue

[inout] Ponteiro para uma variável DWORD que especifica o tamanho em bytes do valor da propriedade. Na entrada, *pcbValue contém o tamanho do buffer alocado pelo chamador (ou 0 se pvValue for NULL). Antes de retornar, o método grava o tamanho real do valor da propriedade gravado no buffer (ou o tamanho necessário se o buffer for muito pequeno ou se pvValue for NULL).

Valor retornado

Se o método for bem-sucedido, retornará S_OK. Se falhar, os códigos de retorno possíveis incluem, mas não se limitam a, os valores mostrados na tabela a seguir.

Código de retorno Descrição
E_POINTER
O ponteiro pcbValue é NULL.
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER)
O buffer apontado pelo parâmetro pvValue é muito pequeno para conter o valor da propriedade ou pvValue é NULL e o tamanho do valor da propriedade é fixo em vez de variável. Para obter informações sobre essa macro, consulte a documentação do SDK do Windows.

Comentários

Se o tamanho do valor da propriedade for variável em vez de fixo, o chamador poderá obter o tamanho do buffer necessário chamando GetValue com o parâmetro pvValue = NULL e *pcbValue = 0. O método grava o tamanho do buffer necessário em *pcbValue. Com essas informações, o chamador pode alocar um buffer do tamanho necessário e chamar GetValue uma segunda vez para obter o valor da propriedade.

Se o buffer alocado pelo chamador for muito pequeno para manter o valor da propriedade, GetValue gravará o tamanho do buffer necessário em *pcbValue e retornará um erro status código. Nesse caso, ele não grava nada no buffer apontado por pvValue.

Requisitos

   
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho devicetopology.h

Confira também

IDeviceSpecificProperty Interface