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 de tipo POOL_TYPE que especifica o tipo de memória a ser alocado.

[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 de estrutura.

[out] Type

Um ponteiro para uma variável 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.

Retornar valor

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.

Um bug marcar ocorrerá se o driver fornecer um identificador de objeto inválido.

Comentários

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 unificado.

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 de dispositivo unificado.

Requisitos

Requisito Valor
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

Confira também

WdfDeviceAllocAndQueryInterfaceProperty

WdfDeviceAllocAndQueryProperty