NdisMCmDeactivateVc 함수(ndis.h)

NdisMCmDeactivateVc 는 NDIS에 특정 활성 VC에 대한 추가 전송이 없음을 알린다.

구문

NDIS_STATUS NdisMCmDeactivateVc(
  [in] NDIS_HANDLE NdisVcHandle
);

매개 변수

[in] NdisVcHandle

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

반환 값

NdisMCmDeactivateVc 는 다음 중 하나를 반환할 수 있습니다.

반환 코드 설명
NDIS_STATUS_SUCCESS
NDIS는 VC를 비활성으로 표시했습니다.
NDIS_STATUS_NOT_ACCEPTED
VC가 이미 비활성화되었으므로 이 호출은 중복됩니다.

설명

MCM 드라이버는 일반적으로 패킷이 네트워크 구성 요소와 교환한 후 연결을 중단하는 호출을 닫는 필수 단계로 NdisMCmDeactivateVc 를 호출합니다.

NdisMCmDeactivateVc를 성공적으로 호출하면 MCM 드라이버가 VC에서 전송에 대한 현재 호출 매개 변수를 삭제할 수 있으며, 드라이버 결정 기본값을 최소화하도록 다시 초기화할 수 있습니다. 그러나 이후에 다른 호출에 대해 VC가 다시 활성화되면 클라이언트는 미니포트 드라이버에 새 호출 매개 변수를 제공합니다.

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

  • VC 비활성화 및 호출 종료 후 클라이언트는 원래 만든 VC를 다시 사용하여 NdisClMakeCall을 사용하여 다른 호출을 수행하거나 NdisCoDeleteVc를 호출하여 MCM 드라이버의 ProtocolCoDeleteVc 함수를 호출할 수 있습니다.
  • VC 비활성화 및 호출 종료 후 MCM 드라이버는 원래 만든 VC를 다시 사용하여 NdisMCmDispatchIncomingCall을 사용하여 동일한 클라이언트에 대한 다른 수신 호출을 나타내거나 NdisMCmDeleteVc를 호출할 수 있습니다.
드라이버 작성기는 MCM 드라이버에 발신 및 수신 호출에 대한 연결을 해제하는 컨텍스트에서 드라이버가 호출하는 (내부) MiniportCoDeactivateVc 함수가 있는지 여부를 결정합니다.

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

요구 사항

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

참고 항목

MiniportCoDeactivateVc

NdisClCloseCall

NdisClMakeCall

NdisCmDeactivateVc

NdisMCmActivateVc

NdisMCmDeleteVc

NdisMCmDispatchIncomingCall

ProtocolCmCloseCall

ProtocolCoDeleteVc