NdisCmDeactivateVc 함수(ndis.h)

NdisCmDeactivateVc 는 NDIS 및 기본 미니포트 드라이버에 특정 활성 VC에 대한 추가 전송이 없음을 알린다.

구문

NDIS_STATUS NdisCmDeactivateVc(
  [in] NDIS_HANDLE NdisVcHandle
);

매개 변수

[in] NdisVcHandle

VC를 식별하는 핸들을 지정합니다. 이 핸들은 들어오는 호출에 대해 NdisCoCreateVc 를 호출하거나 ProtocolCoCreateVc 함수가 클라이언트에서 시작한 발신 호출에 대해 VC를 설정할 때 호출 관리자에게 NDIS에 의해 제공되었습니다.

반환 값

NdisCmDeactivateVc가 NDIS_STATUS_PENDING 이외의 항목을 반환하면 호출 관리자가 내부 호출을 수행해야 합니다. ProtocolCmDeactivateVcComplete 함수입니다. 그렇지 않으면 이 작업이 완료되면 NDIS에서 CM의 ProtocolCmDeactivateVcComplete 함수를 호출합니다.

설명

독립 실행형 호출 관리자는 NdisCmDeactivateVc 를 통화를 종료하는 필수 단계로 호출합니다. 일반적으로 패킷이 네트워크 구성 요소와 교환된 후 호출이 중단됩니다.

NdisCmDeactivateVc를 호출하면 NDIS가 기본 미니포트 드라이버의 MiniportCoDeactivateVc 함수를 호출합니다. 이 함수는 VC에서 전송에 대한 현재 호출 매개 변수를 삭제할 수 있으며 드라이버 결정 기본값을 최소화하도록 다시 초기화할 수 있습니다. 이후에 다른 호출에 대해 VC가 다시 활성화되면 클라이언트 또는 호출 관리자는 미니포트 드라이버에 새 호출 매개 변수를 제공합니다.

NdisCmDeactivateVc에 전달된 NdisVcHandle은 VC 비활성화가 완료된 후에도 유효한 상태로 유지됩니다. VC를 비활성화하면 작성자가 다시 사용할 수 있도록 VC를 다시 초기화할 수 있습니다.

  • VC 비활성화 및 호출 종료 후 클라이언트는 원래 만든 VC를 다시 사용하여 NdisClMakeCall을 사용하여 다른 호출을 수행할 수 있습니다.
  • VC 비활성화 및 호출 종료 후 CM은 원래 만든 VC를 다시 사용하여 동일한 클라이언트에 들어오는 다른 호출을 나타낼 수 있습니다. NdisCmDispatchIncomingCall.
재사용되지 않을 특정 VC의 작성자는 NdisCoDeleteVc 를 호출하여 해당 VC를 삭제합니다.

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

요구 사항

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

참고 항목

MiniportCoDeactivateVc

NdisClCloseCall

NdisClMakeCall

NdisCmActivateVc

NdisCmDispatchIncomingCall

NdisMCmDeactivateVc

ProtocolCmCloseCall

ProtocolCmDeactivateVcComplete