Función WdfDeviceAssignInterfaceProperty (wdfdevice.h)
Importante
Solo se aplica a UMDF
El método WdfDeviceAssignInterfaceProperty modifica el valor actual de una propiedad de interfaz de dispositivo.
Nota
Para recuperar o modificar una propiedad de interfaz de dispositivo, un controlador KMDF debe llamar directamente a IoGetDeviceInterfacePropertyData o IoSetDeviceInterfacePropertyData .
Sintaxis
NTSTATUS WdfDeviceAssignInterfaceProperty(
[in] WDFDEVICE Device,
[in] PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData,
[in] DEVPROPTYPE Type,
[in] ULONG BufferLength,
[in, optional] PVOID PropertyBuffer
);
Parámetros
[in] Device
Identificador de un objeto de dispositivo de marco.
[in] PropertyData
Puntero a WDF_DEVICE_INTERFACE_PROPERTY_DATA estructura.
[in] Type
Valor con tipo DEVPROPTYPE que especifica el tipo de los datos proporcionados en PropertyBuffer.
[in] BufferLength
Especifica la longitud, en bytes, del búfer al que apunta PropertyBuffer .
[in, optional] PropertyBuffer
Puntero a los datos de propiedad de la interfaz de dispositivo. Establezca este parámetro en NULL para eliminar la propiedad especificada.
Valor devuelto
Si el método WdfDeviceAssignInterfaceProperty no encuentra ningún error, devuelve STATUS_SUCCESS. Entre los valores devueltos adicionales se incluyen:
Código devuelto | Descripción |
---|---|
STATUS_INVALID_PARAMETER | Uno de los parámetros es incorrecto. |
El método podría devolver otros valores NTSTATUS.
Comentarios
Para obtener información sobre los métodos relacionados, consulte Acceso al modelo de propiedades de dispositivo unificado.
Ejemplos
En el ejemplo de código siguiente se inicializa una estructura de WDF_DEVICE_INTERFACE_PROPERTY_DATA y, a continuación, se llama a WdfDeviceAssignInterfaceProperty.
DEFINE_DEVPROPKEY(DEVPKEY_ToasterCrispLevelDword, 0x5d0ba64a, 0x2396, 0x4bc9, 0xbf, 0x49, 0x52, 0x1d, 0xa6, 0x2b, 0x1b, 0xed, 3); // DEVPROP_TYPE_UINT32
ULONG crispLevel = 0;
WDF_DEVICE_INTERFACE_PROPERTY_DATA propertyData;
WDF_DEVICE_INTERFACE_PROPERTY_DATA_INIT(
&propertyData,
&GUID_DEVINTERFACE_TOASTER_DRIVER
&DEVPKEY_ToasterCrispLevelDword
);
status = WdfDeviceAssignInterfaceProperty(device,
&propertData,
DEVPROP_TYPE_UINT32,
sizeof(crispLevel),
&crispLevel);
if (!NT_SUCCESS(status)) {
return status;
}
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8.1 |
Plataforma de destino | Universal |
Versión mínima de UMDF | 2.0 |
Encabezado | wdfdevice.h (incluir Wdf.h) |
Library | WUDFx02000.lib |
Archivo DLL | WUDFx02000.dll |
IRQL | PASSIVE_LEVEL |
Consulte también
WDF_DEVICE_INTERFACE_PROPERTY_DATA
WDF_DEVICE_INTERFACE_PROPERTY_DATA_INIT