次の方法で共有


IPort::Init メソッド (portcls.h)

Init メソッドは、ポート ドライバーを初期化します。

構文

NTSTATUS Init(
  PVOID         DeviceObject,
  PVOID         Irp,
  PUNKNOWN      UnknownMiniport,
  PUNKNOWN      UnknownAdapter,
  PRESOURCELIST ResourceList
);

パラメーター

DeviceObject

アダプター ドライバーのデバイススタートアップ ルーチンに引数として渡されたデバイス オブジェクトへのポインター。 デバイス オブジェクトは、DEVICE_OBJECT型のシステム構造です。

Irp

アダプター ドライバーのデバイススタートアップ ルーチンに引数として渡された IRP へのポインター。

UnknownMiniport

初期化されていないミニポート オブジェクトの IUnknown インターフェイスへのポインター。 このインターフェイスは、ポート ドライバーでサポートされている特定のミニポート インターフェイスに対して照会され、そのインターフェイスの初期化関数が呼び出されます。

UnknownAdapter

ポート ドライバーが初期化されているアダプター オブジェクトの IUnknown インターフェイスへのポインター。 このポインターは省略可能であり、NULL として指定できます。 詳細については、次の「解説」セクションを参照してください。

ResourceList

アダプター ドライバーのデバイススタートアップ ルーチンの引数として渡された IResourceList オブジェクトへのポインター。 ミニポート ドライバーにこの参照を渡した後、ポート ドライバーはリソース一覧の内容を自由に確認できますが、この一覧の内容は変更されません。

戻り値

このメソッドは、呼び出しが成功した場合にSTATUS_SUCCESSを含む NTSTATUS を返します。 それ以外の場合、メソッドは適切なエラー コードを返します。

備考

UnknownMiniport で指定されたミニポート オブジェクトは、ポート ドライバーが必要とするミニポート インターフェイスをサポートする必要があります。または、Init 呼び出しは失敗します。

IPort::Init 呼び出し中に、ポート ドライバーはミニポート ドライバーの初期化メソッドを呼び出します (例: IMiniportWavePci::Initを参照)。

パラメーター UnknownAdapter は、アダプター オブジェクトの COM インターフェイスを指します。 アダプター ドライバーは通常、デバイスの起動ルーチン内にこのオブジェクトを作成します。これは、オペレーティング システムがデバイスを起動するために呼び出すルーチンです (スタートアップ シーケンスを参照)。 アダプター オブジェクトのインターフェイスの例については、sysvad オーディオ ドライバーサンプルの CMiniportWaveRT::Init の定義と実装を参照してください。

UnknownMiniport、UnknownAdapter、ResourceList の各パラメーターは、COM オブジェクトの標準の参照カウント規則に従います。

必要条件

要件 価値
ヘッダー portcls.h
IRQL PASSIVE_LEVEL

関連項目

IPort する

IMiniportWavePci::Init