NdisCmCloseCallComplete 함수(ndis.h)

NdisCmCloseCallComplete는 호출 관리자가 이전에 NDIS_STATUS_PENDING 반환한 클라이언트 요청의 최종 상태 반환하여 호출을 중단합니다.

구문

void NdisCmCloseCallComplete(
  [in]           NDIS_STATUS Status,
  [in]           NDIS_HANDLE NdisVcHandle,
  [in, optional] NDIS_HANDLE NdisPartyHandle
);

매개 변수

[in] Status

CM이 연결을 닫는 클라이언트 요청의 최종 상태 지정합니다(NDIS_STATUS_SUCCESS 또는 NDIS_STATUS_PENDING 제외한 모든 CM 결정 NDIS_STATUS_XXX).

[in] NdisVcHandle

호출에 대한 VC에 대한 핸들을 지정합니다. 이 핸들은 NdisCoCreateVc를 사용하여 호출 관리자 또는 클라이언트에서 VC를 원래 만들 때 NDIS에서 제공했습니다. 최근에는 호출 관리자가 입력 매개 변수로 전달된 CallMgrVcContext 가 지정한 VC별 상태에서 이 핸들을 가져옵니다. ProtocolCmCloseCall 함수입니다.

[in, optional] NdisPartyHandle

NdisVcHandle이 지점 간 VC 또는 다중 포인트 연결의 마지막 남은 파티에 대한 핸들을 나타내는 경우 NULL을 지정합니다. 이 핸들은 CM이 CallMgrPartyContext가 지정한 파티별 상태에서 가져온 CM이 ProtocolCmCloseCall 함수에 입력 매개 변수로 전달됩니다.

반환 값

없음

설명

독립 실행형 호출 관리자의 ProtocolCmCloseCall 함수가 NDIS_STATUS_PENDING 반환하는 경우 CM은 이후에 NdisCmCloseCallComplete 를 호출하여 클라이언트와 NDIS에 연결 끊기 시도가 성공적으로 또는 오류와 관계없이 완료되었음을 알려야 합니다. NdisCmCloseCallComplete를 호출하면 NDIS에서 클라이언트를 호출합니다. ProtocolCloseCallComplete 함수입니다.

NDIS_STATUS_SUCCESS 상태로 전달하는 경우 호출 관리자는 NdisCmCloseCallComplete를 호출하는 즉시 네트워크를 통해 전송할 수 없는 NdisVcHandle(및 NdisPartyHandle,있는 경우)을 고려해야 합니다. 호출 관리자가 원래 VC를 만든 경우 방금 NdisCmCloseCallComplete에 전달한 것과 동일한 NdisVcHandle을 사용하여 NdisCoDeleteVc를 호출해야 합니다. 클라이언트가 이 VC를 만든 경우 호출 관리자는 를 사용하여 ProtocolCoDeleteVc 함수에 대한 호출을 기대할 수 있습니다.
ProtocolVcContext는 입력 매개 변수와 동일한 NdisVcHandle을 줍니다.

NDIS에 프로토콜 드라이버로 등록하는 독립 실행형 통화 관리자만 NdisCmCloseCallComplete를 호출할 수 있습니다. 통합 통화 관리 지원을 제공하는 연결 지향 미니포트 드라이버는 대신 NdisMCmCloseCallComplete 를 호출합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista에서 NDIS 6.0 및 NDIS 5.1 드라이버(NdisCmCloseCallComplete(NDIS 5.1 참조))에 대해 지원됩니다. Windows XP의 NDIS 5.1 드라이버(NdisCmCloseCallComplete(NDIS 5.1 참조))에 대해 지원됩니다.
대상 플랫폼 데스크톱
머리글 ndis.h(Ndis.h 포함)
라이브러리 Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI 규정 준수 규칙 Irql_CallManager_Function(ndis)

추가 정보

NdisClCloseCall

NdisCoDeleteVc

NdisMCmCloseCallComplete

ProtocolCloseCallComplete

ProtocolCoDeleteVc