NdisClMakeCall 関数 (ndis.h)

NdisClMakeCall は、クライアントが作成した VC で発信呼び出しを設定します。

構文

NDIS_STATUS NdisClMakeCall(
  [in]            NDIS_HANDLE         NdisVcHandle,
  [in, out]       PCO_CALL_PARAMETERS CallParameters,
  [in, optional]  NDIS_HANDLE         ProtocolPartyContext,
  [out, optional] PNDIS_HANDLE        NdisPartyHandle
);

パラメーター

[in] NdisVcHandle

NdisCoCreateVc の前の呼び出しによって返されるハンドルを指定します。

[in, out] CallParameters

呼び出し元がこの接続の属性を指定 したCO_CALL_PARAMETERS 型の構造体へのポインター (通話マネージャーでサポートされているネットワーク メディアとアドレス ファミリで QoS 仕様が許可されている場合は、通話のターゲットのアドレス、待機時間、帯域幅、サービス品質など)。

[in, optional] ProtocolPartyContext

必要に応じて、クライアントがマルチポイント VC の初期パーティのパーティごとの状態を維持する常駐コンテキスト領域への呼び出し元から提供されるハンドルを指定します。 指定された VC がマルチポイント接続を表していない場合、このパラメーターは NULL です 。 マルチポイント VC の場合、NDIS は、この特定のパーティに影響を与える後続のすべての呼び出しで、このハンドルをクライアントの ProtocolClXxx 関数に戻します。

[out, optional] NdisPartyHandle

呼び出し元が指定した変数へのポインター。通常は、呼び出し元によって割り当てられたパーティ コンテキスト領域で、NDIS は、発信呼び出しを設定する要求が成功した場合に、マルチポイント接続への初期パーティを表すハンドルを返します。 ProtocolPartyContextNULL の場合、この変数 (通常はクライアントの VC コンテキスト領域) も、発信呼び出しのセットアップが完了すると NULL に設定されます。

戻り値

NdisClMakeCall がNDIS_STATUS_PENDING以外のものを返す場合、クライアントは、 の内部呼び出しを行う必要があります。 ProtocolClMakeCallComplete 関数。 それ以外の場合、NDIS は、この操作が完了したときにクライアントの ProtocolClMakeCallComplete 関数を呼び出します。

注釈

NdisClMakeCall は、クライアントによって開始される発信呼び出し用に、クライアントによって作成された VC の属性を設定します。 クライアントは、送信呼び出しを試行する前に、 NdisCoCreateVc を使用して VC を設定する必要があります。

NdisClMakeCall を呼び出すと、NDIS は、クライアントが指定された NdisVcHandle を共有する呼び出しマネージャーの ProtocolCmMakeCall 関数にこの要求を転送します。 CM は、 CallParameters で指定されたデータを検証する役割を担います。 関連するネットワーク コンポーネントとのネゴシエート中にこのクライアントから提供されたデータを変更でき、 NdisClMakeCall に最初に渡されたクライアントとは異なるトラフィック パラメーターを返すことができます。 クライアントの ProtocolClMakeCallComplete 関数は、変更された呼び出しパラメーターが発生した場合は受け入れるか、CM の提案された呼び出しパラメーターが受け入れられない場合は呼び出しを破棄する役割を担います。

そのため、 CallParameters のデータは、少なくとも通話のセットアップ期間中、通話マネージャーが使用できる状態を維持する必要があります。 NdisClMakeCall がNDIS_STATUS_PENDINGを返すとき、クライアントはこのバッファーを解放できません。 ProtocolClMakeCallComplete 関数が呼び出されるまで、このクライアント割り当てリソースの解放を延期する必要があります。

NdisClMakeCall がマルチポイント接続を設定する場合、基になるネットワーク メディアがパーティごとのトラフィック パラメーターをサポートしていない限り、クライアントは特定の VC に対してトラフィック パラメーターをグローバルに確立します。

クライアントの ProtocolClMakeCallComplete 関数は、NdisPartyHandle で返されたハンドルを使用する前に、NDIS_STATUS_SUCCESSの入力状態をチェックする必要があります。 呼び出しマネージャーがマルチポイント接続で呼び出しを設定する要求に失敗した場合、このクライアント指定変数の値は無効です。

要件

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

こちらもご覧ください

CO_CALL_PARAMETERS

NdisAllocateFromNPagedLookasideList

NdisClAddParty

NdisClCloseCall

NdisClModifyCallQoS

NdisCmActivateVc

NdisCmMakeCallComplete

NdisCoCreateVc

ProtocolClMakeCallComplete

ProtocolCmMakeCall