次の方法で共有


NdisCmDispatchIncomingCloseCall 関数 (ndis.h)

NdisCmDispatchIncomingCloseCall は、通常、呼び出しマネージャーがネットワークから接続を閉じる要求を受信したため、アクティブまたは提供された呼び出しを破棄するようにクライアントに指示します。

構文

void NdisCmDispatchIncomingCloseCall(
  [in]           NDIS_STATUS CloseStatus,
  [in]           NDIS_HANDLE NdisVcHandle,
  [in, optional] PVOID       Buffer,
  [in]           UINT        Size
);

パラメーター

[in] CloseStatus

切断要求の理由を示す CM によって決定されたNDIS_STATUS_XXX を指定します。 通常のネットワーク操作中に、呼び出しマネージャーはNDIS_STATUS_SUCCESSを渡して、アクティブな呼び出しを閉じるために、リモート パーティによって開始された要求を受信したことを示します。

[in] NdisVcHandle

切断されている呼び出しの VC へのハンドルを指定します。 このハンドルは、 NDISCoCreateVc を使用して、呼び出しマネージャーまたはクライアントのいずれによっても、VC が最初に作成されたときに NDIS によって提供されました。

[in, optional] Buffer

プロトコル固有の切断データが追加されている場合は、呼び出し元によって割り当てられた常駐バッファーへのポインター。 基になるメディアに応じて、このポインターは NULL にすることができます

[in] Size

バッファーのサイズをバイト単位で指定します。 Buffer が NULL の場合は 0 です

戻り値

なし

解説

通常のネットワーク操作の過程で、スタンドアロン CM は NdisCmDispatchIncomingCloseCall を呼び出し 、CloseStatus は NDIS_STATUS_SUCCESS に設定されます。これは、リモート ノード上の対応するクライアントが NdisClCloseCall を呼び出しているためです。

ただし、次のいずれかが発生した場合、呼び出しマネージャーは NdisCmDispatchIncomingCloseCall を呼び出すこともできます。

  • 通話マネージャーは、着信呼び出しオファーをクライアントに通知しました。 CM が ProtocolCmIncomingCallComplete 関数は、クライアントの受け入れによって呼び出され、クライアントが変更した入力呼び出しパラメーターを検証します。 ProtocolCmIncomingCallComplete は、クライアントが接続に対してサポートできない呼び出しパラメーターを提案していることを判断するため、 NdisCmDispatchIncomingCloseCall を呼び出します。
  • 異常なネットワーク状態では、呼び出しマネージャーはアクティブな呼び出しを強制的に破棄します。 たとえば、このクライアントとリモート パーティ間の接続上のリンクが切断されたときに呼び出しマネージャーに通知された場合、CM は NdisCmDispatchIncomingCloseCall を呼び出して、このような切断された接続に対してクライアントがさらにデータ転送を試行 (または予期) するのを防ぎます。
呼び出しを破棄した後、VC の元の作成者は、VC に関連付けられている追加のリソースを解放した後に NdisCoDeleteVc を呼び出す責任があります。

NdisCmDispatchIncomingCloseCall を呼び出すと、NDIS はクライアントの を呼び出します。 ProtocolClIncomingCloseCall 関数。

スタンドアロンの呼び出しマネージャー (プロトコル ドライバーとして NDIS に登録) のみが NdisCmDispatchIncomingCloseCall を呼び出すことができます。 呼び出し管理サポート呼び出しを提供する接続指向ミニポート ドライバー 代わりに NdisMCmDispatchIncomingCall

要件

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

こちらもご覧ください

NdisClCloseCall

NdisCmDispatchIncomingDropParty

NdisCoDeleteVc

NdisMCmDispatchIncomingCloseCall

ProtocolClIncomingCloseCall

ProtocolCoReceiveNetBufferLists

ProtocolCoStatusEx