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 |
---|---|
|
DependentDevice es NULL. |
|
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) |