次の方法で共有


PcForwardIrpSynchronous 関数 (portcls.h)

PcForwardIrpSynchronous 関数は、プラグ アンド プレイ IRP を 物理デバイス オブジェクト (PDO)に転送するために IRP ハンドラーによって使用されます。

構文

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

パラメーター

[in] DeviceObject

オーディオ デバイスのデバイス オブジェクトへのポインター。 このパラメーターは、DEVICE_OBJECT型のシステム構造を指す必要があります。

[in] Irp

転送される IRP へのポインター

戻り値

PcForwardIrpSynchronous は、呼び出しが成功した場合にSTATUS_SUCCESSを返します。 それ以外の場合は、適切なエラー コードが返されます。

備考

PcForwardIrpSynchronous 、次の PDO は IRP を受信し、物理デバイス ドライバーによって IRP が完了するまでブロックします。 その時点で、PcForwardIrpSynchronous ブロックを解除し、呼び出し元に戻ります。 呼び出し元 (IRP ハンドラー) は最終的に戻る必要があります。場合によっては、状態が STATUS_PENDING。 一般に、この関数を呼び出す IRP ハンドラーは、戻る際にIRP_ACTION_FINISHアクションを指定する必要があります。 その他の操作を行うと、IRP が 2 回目に物理デバイスに転送されます。

PcCompleteIrp 関数は、IRP ハンドラーがSTATUS_PENDINGを返し、IRP を後で完了する必要がある場合に使用されます。

必要条件

要件 価値
サポートされる最小クライアント PortCls システム ドライバーは、Microsoft Windows 98/Me および Windows 2000 以降のオペレーティング システムで PcForwardIrpSynchronous 関数を実装します。
ターゲット プラットフォーム 万国
ヘッダー portcls.h (Portcls.h を含む)
ライブラリ Portcls.lib
IRQL PASSIVE_LEVEL

関連項目

DEVICE_OBJECT

IRP

PcCompleteIrp