次の方法で共有


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

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

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

要件

要件
対象プラットフォーム デスクトップ
Header dmusicks.h (Dmusicks.h を含む)
IRQL PASSIVE_LEVEL

こちらもご覧ください

IInterruptSync

IMiniportDMus

IPort::Init

IPortDMus

IPortDMus::Notify

IResourceList

IServiceGroup

PcNewInterruptSync