Función WdfFdoInitAllocAndQueryPropertyEx (wdffdo.h)
[Se aplica a KMDF y UMDF]
El método WdfFdoInitAllocAndQueryPropertyEx asigna un búfer y recupera una propiedad de dispositivo especificada.
Sintaxis
NTSTATUS WdfFdoInitAllocAndQueryPropertyEx(
[in] PWDFDEVICE_INIT DeviceInit,
[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] DeviceInit
Puntero a una estructura WDFDEVICE_INIT que el controlador obtuvo de su función de devolución de llamada EvtDriverDeviceAdd .
[in] DeviceProperty
Puntero a una estructura WDF_DEVICE_PROPERTY_DATA que identifica la propiedad del dispositivo que se va a recuperar.
[in] PoolType
Enumerador de tipo POOL_TYPE que especifica el tipo de memoria que se va a asignar.
[in, optional] PropertyMemoryAttributes
Puntero a una estructura de WDF_OBJECT_ATTRIBUTES asignada por el autor de la llamada que describe los atributos de objeto para el objeto de memoria que asignará la función. Este parámetro es opcional y puede ser WDF_NO_OBJECT_ATTRIBUTES.
[out] PropertyMemory
Puntero a una ubicación con tipo WDFMEMORY que recibe un identificador de un objeto de memoria de marco.
[out] Type
Puntero a una variable DEVPROPTYPE . Si el método se realiza correctamente, al devolver este parámetro, contiene el valor de tipo de propiedad de los datos de propiedad almacenados en PropertyMemory.
Valor devuelto
Si la operación se realiza correctamente, WdfFdoInitAllocAndQueryPropertyEx devuelve STATUS_SUCCESS. Entre los valores devueltos adicionales se incluyen:
Código devuelto | Descripción |
---|---|
|
El valor deviceProperty especificado no es válido. |
El método podría devolver otros valores NTSTATUS.
Se produce una comprobación de errores si el controlador proporciona un identificador de objeto no válido.
Comentarios
El método WdfFdoInitAllocAndQueryPropertyEx determina la cantidad de memoria necesaria para contener la propiedad de interfaz de dispositivo solicitada. Asigna suficiente memoria para contener los datos y devuelve un identificador a un objeto de memoria de marco que describe la memoria asignada. Para acceder a los datos, el controlador puede llamar a WdfMemoryGetBuffer.
El controlador solo puede llamar a WdfFdoInitAllocAndQueryPropertyEx antes de llamar a WdfDeviceCreate. Para obtener más información sobre cómo llamar a WdfDeviceCreate, vea Creating a Framework Device Object.
Después de llamar a WdfDeviceCreate, un controlador puede obtener información de propiedad del dispositivo llamando a WdfDeviceAllocAndQueryPropertyEx.
Para obtener información sobre los métodos relacionados, consulte Acceso al modelo de propiedades de dispositivo unificado.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Versión mínima de KMDF | 1.13 |
Versión mínima de UMDF | 2.0 |
Encabezado | wdffdo.h (incluir Wdf.h) |
Library | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | PASSIVE_LEVEL |