NdisCoAssignInstanceName 関数 (ndis.h)

NdisCoAssignInstanceName は、インスタンス名を VC に割り当て、割り当てられた名前の GUID (グローバル一意識別子) を Windows Management Instrumentation (WMI) に登録します。

構文

NDIS_STATUS NdisCoAssignInstanceName(
  [in]            NDIS_HANDLE  NdisVcHandle,
  [in]            PNDIS_STRING BaseInstanceName,
  [out, optional] PNDIS_STRING VcInstanceName
);

パラメーター

[in] NdisVcHandle

名前を付ける VC へのハンドルを指定します。 このハンドルは、VC が最初に NdisCoCreateVc を使用して作成されたときに NDIS によって提供されました。これは、クライアントが発信呼び出しを行う準備をしているか、クライアントに着信呼び出しをディスパッチする準備として呼び出しマネージャーによって作成されたかに関係なく行われました。

[in] BaseInstanceName

VC のベース名を指定する呼び出し元から指定された Unicode 文字列を記述するNDIS_STRING型へのポインター。 ベース名には、ミニポート ドライバーのスコープ内の他の名前付き VC に関して VC を一意に識別するローカライズ可能な Unicode 文字列を指定できます。 Windows Vista 以降の場合、NDIS はNDIS_STRING型を UNICODE_STRING 型として定義します。

[out, optional] VcInstanceName

呼び出し元によって割り当てられたNDIS_STRING型へのポインター。このルーチンは、VC に割り当てられた NDIS 割り当てインスタンス名を指定する Unicode 文字列を返します。

戻り値

NdisCoAssignInstanceName は、次のいずれかを返すことができます。

リターン コード 説明
NDIS_STATUS_SUCCESS
NDIS は、指定された VC にインスタンス名を割り当て、WMI を使用してインスタンス名の GUID を登録しました。
NDIS_STATUS_FAILURE
インスタンス名を VC に割り当てませんでした。
NDIS_STATUS_RESOURCES
NDIS は、インスタンス名のバッファーを割り当てませんでした。

注釈

NdisCoCreateVc を使用して VC のセットアップを開始した後、呼び出しマネージャーまたは接続指向のクライアントは、NdisCoAssignInstanceName で VC に名前を付けることができます。 NdisCoAssignInstanceName を呼び出すと、NDIS によって VC にインスタンス名が割り当てられ、WMI にインスタンス名が登録されます。 その後、WMI クライアントは VC を列挙し、VC を基準にして OID を照会または設定できます。

統合ミニポート 呼び出しマネージャー (MCM) ドライバーは、その VC に名前を付けるために NdisCoAssignInstanceName を使用できません。 代わりに、MCM ドライバーは、VC のカスタム GUID と OID を作成し、GUID から OID へのマッピングを NDIS に登録する必要があります。

NDIS は、呼び出し元が指すベース名にインデックスを追加することによって、指定された VC のインスタンス名を作成します。 NDIS は、呼び出し元に完全なインスタンス名 (ベース名とインデックス) を返し、WMI にインスタンス名の GUID を登録します。 WMI クライアントによって列挙および照会できるのは、名前付き VC のみです。 名前のない VC は WMI クライアントには表示されません。

指定した VC に既にインスタンス名 ( 以前の NdisCoAssignInstanceName の呼び出しで割り当てられている) がある場合、NDIS は NDIS_STATUS_SUCCESSを返し、VC に割り当てられた のインスタンス名を返します。 インスタンス名は、その VC が削除されるまで VC に割り当てられたままになります。

呼び出し元は、返されたインスタンス名を、NDIS が以前に NdisCoCreateVc から呼び出し元に返した名前付き VC のハンドルに関連付けることができます。 ただし、NDIS では、後続の呼び出しで VC を参照するために、インスタンス名ではなく VC ハンドルが引き続き使用されます。 NdisCoAssignInstanceName の呼び出し元は、インスタンス名を他の管理エンティティに返す必要がある場合があります。

呼び出し元は、返されたインスタンス名を含むバッファーを解放する役割を担います。 NdisCoDeleteVc を使用して名前付き VC を削除した後、呼び出し元は NdisFreeString を使用してバッファーを解放する必要があります。

要件

要件
サポートされている最小のクライアント Windows Vista の NDIS 6.0 ドライバーと NDIS 5.1 ドライバー (NdisCoAssignInstanceName (NDIS 5.1) を参照) でサポートされています。 Windows XP の NDIS 5.1 ドライバー (NdisCoAssignInstanceName (NDIS 5.1) を参照) でサポートされています。
対象プラットフォーム デスクトップ
Header ndis.h (Ndis.h を含む)
Library Ndis.lib
IRQL DISPATCH_LEVEL
DDI コンプライアンス規則 Irql_Connection_Function(ndis)

こちらもご覧ください

MiniportCoOidRequest

MiniportOidRequest

NdisCoCreateVc

NdisCoDeleteVC

NdisFreeString

UNICODE_STRING