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