Compartir a través de


Función WdfDeviceAddDependentUsageDeviceObject (wdfdevice.h)

[Solo se aplica a KMDF]

El método WdfDeviceAddDependentUsageDeviceObject indica que un dispositivo especificado depende de otro dispositivo cuando se usa el dispositivo especificado para almacenar archivos especiales.

Sintaxis

NTSTATUS WdfDeviceAddDependentUsageDeviceObject(
  [in] WDFDEVICE      Device,
  [in] PDEVICE_OBJECT DependentDevice
);

Parámetros

[in] Device

Identificador de un objeto de dispositivo de marco.

[in] DependentDevice

Puntero a una estructura de DEVICE_OBJECT proporcionada por el autor de la llamada que identifica un dispositivo del que depende El dispositivo.

Valor devuelto

Si la operación se realiza correctamente, el método WdfDeviceAddDependentUsageDeviceObject devuelve STATUS_SUCCESS. Entre los valores devueltos adicionales se incluyen:

Código devuelto Descripción
STATUS_INVALID_PARAMETER
DependentDevice es NULL.
STATUS_INSUFFICIENT_RESOURCES
Error en la asignación de memoria.
 

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 controlador puede llamar a WdfDeviceAddDependentUsageDeviceObject para indicar que el dispositivo identificado por Device depende del dispositivo identificado por DependentDevice, cuando Device admite archivos especiales. Si el controlador llama a WdfDeviceAddDependentUsageDeviceObject, el marco llama a las funciones de devolución de llamada EvtDeviceUsageNotification en los controladores de DependentDevice antes de llamar a las funciones de devolución de llamada EvtDeviceUsageNotification en los controladores del dispositivo.

El controlador puede llamar a WdfDeviceAddDependentUsageDeviceObject varias veces para identificar varios dispositivos de los que el dispositivo depende de para admitir archivos especiales.

Una vez que un controlador ha llamado a WdfDeviceAddDependentUsageDeviceObject, puede llamar a WdfDeviceRemoveDependentUsageDeviceObject para quitar el dispositivo identificado por DependentDevice de la lista de dispositivos de los que depende el dispositivo .

Para obtener más información sobre los archivos especiales, vea Archivos especiales auxiliares.

Ejemplos

En el ejemplo de código siguiente se agrega un dispositivo (pDeviceObject) a la lista de dispositivos de los que depende otro dispositivo (dispositivo).

status = WdfDeviceAddDependentUsageDeviceObject(
                                                device,
                                                pDeviceObject
                                                );

Requisitos

Requisito Value
Plataforma de destino Universal
Versión mínima de KMDF 1.0
Encabezado wdfdevice.h (incluya Wdf.h)
Library Wdf01000.sys (consulte Control de versiones de la biblioteca de marcos).
IRQL <= DISPATCH_LEVEL
Reglas de cumplimiento de DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Consulte también

EvtDeviceUsageNotification

WdfDeviceRemoveDependentUsageDeviceObject