PcCompleteIrp 函数 (portcls.h)

PcCompleteIrp 函数完成以前标记为挂起的 IRP。

语法

PORTCLASSAPI NTSTATUS PcCompleteIrp(
  [in] PDEVICE_OBJECT pDeviceObject,
  [in] PIRP           pIrp,
  [in] NTSTATUS       ntStatus
);

参数

[in] pDeviceObject

指向设备的设备对象的指针。 此参数必须指向 DEVICE_OBJECT类型的系统结构。

[in] pIrp

指向要完成 IRP 的指针

[in] ntStatus

指定已完成 IRP 的状态。 请参阅头文件 ntstatus.h 中定义的 NTSTATUS 值列表。

返回值

PcCompleteIrp 如果调用成功,则返回STATUS_SUCCESS。 否则,它将返回适当的错误代码。

言论

当 IRP 处理程序返回STATUS_PENDING且 IRP 稍后必须完成时,将使用 PcCompleteIrp。 适配器驱动程序完成 IRP 的所有处理后,它会调用 PcCompleteIrp 来完成 IRP。

IRP 处理程序不应调用此函数。 适配器驱动程序的 IRP 处理程序改为调用 PcDispatchIrp 将 IRP 传递给 PortCls 系统驱动程序的 IRP 处理程序,以执行 IRP 的所有剩余处理。

要求

要求 价值
最低支持的客户端 PortCls 系统驱动程序在 Microsoft Windows 98/Me 和 Windows 2000 及更高版本的作系统中实现 PcCompleteIrp 函数。
目标平台 普遍
标头 portcls.h (包括 Portcls.h)
Portcls.lib
IRQL <=DISPATCH_LEVEL

另请参阅

DEVICE_OBJECT

IRP

IoCompleteRequest

PcDispatchIrp