Función PcForwardIrpSynchronous (portcls.h)

Los controladores IRP usan la función PcForwardIrpSynchronous para reenviar Plug and Play IRP al objeto de dispositivo físico (PDO).

Sintaxis

PORTCLASSAPI NTSTATUS PcForwardIrpSynchronous(
  [in] PDEVICE_OBJECT DeviceObject,
  [in] PIRP           Irp
);

Parámetros

[in] DeviceObject

Puntero al objeto de dispositivo del dispositivo de audio. Este parámetro debe apuntar a una estructura del sistema de tipo DEVICE_OBJECT.

[in] Irp

Puntero al IRP que se va a reenviar

Valor devuelto

PcForwardIrpSynchronous devuelve STATUS_SUCCESS si la llamada se realizó correctamente. De lo contrario, devuelve un código de error adecuado.

Comentarios

PcForwardIrpSynchronous hace que el siguiente PDO reciba el IRP y bloquee hasta que el controlador de dispositivo físico haya completado el IRP. En ese momento, PcForwardIrpSynchronous desbloquea y vuelve al autor de la llamada. El autor de la llamada (un controlador IRP) debe devolver, posiblemente, con un estado de STATUS_PENDING. En general, cualquier controlador IRP que llame a esta función debe especificar la acción IRP_ACTION_FINISH al devolver. Cualquier otra acción provocaría que el IRP se reenviase al dispositivo físico una segunda vez.

La función PcCompleteIrp se usa cuando un controlador IRP devuelve STATUS_PENDING y el IRP debe completarse más adelante.

Requisitos

Requisito Value
Cliente mínimo compatible El controlador del sistema PortCls implementa la función PcForwardIrpSynchronous en Microsoft Windows 98/Me y en los sistemas operativos Windows 2000 y versiones posteriores.
Plataforma de destino Universal
Encabezado portcls.h (incluir Portcls.h)
Library Portcls.lib
IRQL PASSIVE_LEVEL

Consulte también

DEVICE_OBJECT

IRP

PcCompleteIrp