次の方法で共有


IMiniportDMus::Init メソッド (dmusicks.h)

Init メソッドは、DMus ミニポート オブジェクトを初期化します。

構文

NTSTATUS Init(
  [in, optional] PUNKNOWN      UnknownAdapter,
  [in]           PRESOURCELIST ResourceList,
  [in]           PPORTDMUS     Port,
  [out]          PSERVICEGROUP *ServiceGroup
);

パラメーター

[in, optional] UnknownAdapter

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

[in] ResourceList

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

[in] Port

ポート ドライバーのコールバック インターフェイスを提供する IPortDMus オブジェクトへのポインター。

[out] ServiceGroup

サービス グループの出力ポインター。 このパラメーターは、メソッドがミニポート ドライバーのサービス グループ オブジェクトの IServiceGroup インターフェイスへのポインターを書き込む呼び出し元によって割り当てられたポインター変数を指します。 これは、このミニポート ドライバーが IPortDMus::Notify への呼び出しに使用サービス グループです。

戻り値

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

備考

pUnknownAdapter パラメーターは省略可能です。

  • pUnknownAdapterNULLでない場合、Init メソッドは、IInterruptSync インターフェイスについて、pUnknownAdapter オブジェクトを照会します。
  • pUnknownAdapter が NULL 場合、Init メソッドは PcNewInterruptSync 呼び出して、新しい IInterruptSync オブジェクトを作成します。 この場合、pResourceList リソース リストは、新しい IInterruptSync オブジェクトが使用する割り込みリソースを提供することを指します。
いずれの場合も、ミニポート ドライバーの割り込みサービス ルーチン (ISR) を ISR の一覧に追加するために、Init メソッドと IInterruptSync オブジェクトの RegisterServiceRoutine メソッドを呼び出します。 アダプター ドライバーが後でポート オブジェクトを解放すると、ポート ドライバーは、IInterruptSync オブジェクトへの参照を解放します。

pUnknownAdapter パラメーターと pResourceList パラメーターは、以前にアダプター ドライバーが IPortDMus オブジェクトの Init メソッドにパラメーターとして渡したのと同じポインター値です (IPort::Initを参照)。

pUnknownAdapterpResourceListpPort、および ppServiceGroup パラメーターは、COM オブジェクト 参照カウント規則に従います。

必要条件

要件 価値
ターゲット プラットフォーム デスクトップ
ヘッダー dmusicks.h (Dmusicks.h を含む)
IRQL PASSIVE_LEVEL

関連項目

IInterruptSync

IMiniportDMus する

IPort::Init

IPortDMus する

IPortDMus::Notify

IResourceList

IServiceGroup

PcNewInterruptSync