次の方法で共有


PcDispatchIrp 関数 (portcls.h)

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

構文

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

パラメーター

[in] pDeviceObject

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

[in] pIrp

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

戻り値

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

注釈

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

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

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

要件

要件
サポートされている最小のクライアント PortCls システム ドライバーは、Microsoft Windows 98/Me および Windows 2000 以降のオペレーティング システムで PcDispatchIrp 関数を実装します。
対象プラットフォーム ユニバーサル
Header portcls.h
Library Portcls.lib
IRQL PASSIVE_LEVEL

こちらもご覧ください

DEVICE_OBJECT

IRP

PcInitializeAdapterDriver