次の方法で共有


PcDispatchIrp 関数 (portcls.h)

PcDispatchIrp 関数は、Irp を PortCls システム ドライバーの既定のハンドラーにディスパッチします。

構文

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

パラメーター

[in] pDeviceObject

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

[in] pIrp

ディスパッチされる IRP へのポインター

戻り値

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

備考

初期化プロセスの一環として、PcInitializeAdapterDriver 関数は、ドライバー オブジェクトに複数の IRP のハンドラーへのポインターを読み込みます。 PcInitializeAdapterDriver 呼び出しの後、アダプター ドライバーは、独自の IRP ハンドラーへのポインターで 1 つ以上の PortCls ハンドラー ポインターを上書きすることを選択できます。

IRP を受け取った後、アダプター ドライバーの IRP ハンドラーが、代わりに PortCls IRP ハンドラーによって IRP を処理する必要があると判断した場合、アダプター ドライバーのハンドラーは、Irp を PortCls ハンドラーに転送するために PcDispatchIrp 呼び出します。

コード例については、Microsoft Windows Driver Kit (WDK) の SB16 サンプル オーディオ ドライバーを参照してください。

必要条件

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

関連項目

DEVICE_OBJECT

IRP

PcInitializeAdapterDriver