Compartilhar via


Função WdfDeviceAllocAndQueryPropertyEx (wdfdevice.h)

[Aplica-se a KMDF e UMDF]

O método WdfDeviceAllocAndQueryPropertyEx aloca um buffer e recupera uma propriedade de dispositivo especificada.

Sintaxe

NTSTATUS WdfDeviceAllocAndQueryPropertyEx(
  [in]           WDFDEVICE                 Device,
  [in]           PWDF_DEVICE_PROPERTY_DATA DeviceProperty,
  [in]           POOL_TYPE                 PoolType,
  [in, optional] PWDF_OBJECT_ATTRIBUTES    PropertyMemoryAttributes,
  [out]          WDFMEMORY                 *PropertyMemory,
  [out]          PDEVPROPTYPE              Type
);

Parâmetros

[in] Device

Um identificador para um objeto de dispositivo de estrutura.

[in] DeviceProperty

Um ponteiro para uma estrutura WDF_DEVICE_PROPERTY_DATA que identifica a propriedade do dispositivo a ser recuperada.

[in] PoolType

Um enumerador POOL_TYPEdigitado que especifica o tipo de memória a ser alocada.

[in, optional] PropertyMemoryAttributes

Um ponteiro para uma estrutura de WDF_OBJECT_ATTRIBUTES alocada pelo chamador que descreve atributos de objeto para o objeto de memória que a função alocará. Esse parâmetro é opcional e pode ser WDF_NO_OBJECT_ATTRIBUTES.

[out] PropertyMemory

Um ponteiro para um local do tipo WDFMEMORY que recebe um identificador para um objeto de memória da estrutura.

[out] Type

Um ponteiro para uma variável de DEVPROPTYPE. Se o método for bem-sucedido, ao retornar, esse parâmetro conterá o valor do tipo de propriedade dos dados de propriedade armazenados em PropertyMemory.

Valor de retorno

Se a operação for bem-sucedida, WdfDeviceAllocAndQueryPropertyEx retornará STATUS_SUCCESS. Os valores de retorno adicionais incluem:

Código de retorno Descrição
STATUS_INVALID_PARAMETER
O valor DeviceProperty especificado é inválido.
 

O método pode retornar outros valores NTSTATUS .

Uma verificação de bug ocorre se o driver fornece um identificador de objeto inválido.

Observações

Você pode usar WdfDeviceAllocAndQueryPropertyEx para recuperar qualquer propriedade exposta por meio do modelo de propriedade unificada, enquanto o método WdfDeviceAllocAndQueryProperty só permite consultar um subconjunto do modelo de propriedade unificada.

O método WdfDeviceAllocAndQueryPropertyEx determina a quantidade de memória necessária para manter a propriedade de interface do dispositivo solicitada. Ele aloca memória suficiente para armazenar os dados e retorna um identificador para um objeto de memória de estrutura que descreve a memória alocada. Para acessar os dados, o driver pode chamar WdfMemoryGetBuffer.

Para obter informações sobre métodos relacionados, consulte Acessando o modelo de propriedade do dispositivo unificado.

Requisitos

Requisito Valor
da Plataforma de Destino Universal
versão mínima do KMDF 1.13
versão mínima do UMDF 2.0
cabeçalho wdfdevice.h (inclua Wdf.h)
biblioteca Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL APC_LEVEL

Consulte também

WdfDeviceAllocAndQueryInterfaceProperty

WdfDeviceAllocAndQueryProperty