次の方法で共有


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 オブジェクトの標準の参照カウント規則に従います。

要件

要件
Header portcls.h
IRQL PASSIVE_LEVEL

こちらもご覧ください

IPort

IMiniportWavePci::Init