NdisCmActivateVc 함수(ndis.h)

NdisCmActivateVc 는 특정 VC에 대한 미디어 매개 변수를 비롯한 CM 제공 호출 매개 변수를 기본 미니포트 드라이버로 전달합니다.

구문

NDIS_STATUS NdisCmActivateVc(
  [in]      NDIS_HANDLE         NdisVcHandle,
  [in, out] PCO_CALL_PARAMETERS CallParameters
);

매개 변수

[in] NdisVcHandle

호출 매개 변수를 설정할 VC를 식별하는 핸들을 지정합니다. 호출 관리자는 들어오는 호출에 대해 NdisCoCreateVc 에서 이 핸들을 가져오거나 클라이언트에서 시작한 발신 호출에 대한 ProtocolCoCreateVc 함수에 대한 입력 매개 변수로 가져옵니다.

[in, out] CallParameters

기본 미니포트 드라이버가 VC 정품 인증에 사용하는 모든 미디어 관련 매개 변수를 포함하는 CO_CALL_PARAMETERS 형식의 구조로 형식이 지정된 CM 할당 상주 버퍼에 대한 포인터입니다.

반환 값

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

설명

NdisCmActivateVc 는 기본 미니포트 드라이버에 새로 만든 VC에서 호출 및 미디어 매개 변수를 설정하거나 설정된 VC의 매개 변수를 변경하도록 알린다. NDIS는 지정된 호출 매개 변수 및 VC 핸들을 기본 미니포트 드라이버의 MiniportCoActivateVc 함수로 전달합니다. 이 함수는 VC의 상태를 추적하는 데 필요한 모든 리소스를 설정하고 VC에서 데이터 전송을 위한 자체 및 NIC를 준비합니다.

독립 실행형 CM은 VC에서 연결을 설정한 후 해당 VC에서 데이터를 보내거나 받기 전에 항상 NdisCmActivateVc 를 호출합니다. 연결 기간 동안 CM은 네트워크 변경 조건과 동일한 NdisVcHandle을 사용하여 NdisCmActivateVc를 여러 번 호출하거나 클라이언트가 NdisClModifyCallQoS를 호출할 때마다 호출할 수 있습니다. NdisCmActivateVc에 대한 이러한 각 호출에서 기본 미니포트 드라이버의 MiniportCoActivateVc 함수는 다음 중 하나를 수행해야 합니다.

  • 미니포트 드라이버가 새로 수정된 호출 매개 변수에 따라 VC에서 전송을 계속할 수 있는 경우 미니포트 드라이버가 호출 매개 변수에 대해 유지 관리하는 상태를 호출 관리자가 제공하는 새 값으로 업데이트합니다.
  • 미니포트 드라이버가 지정된 호출 매개 변수의 제약 조건 하에서 전송을 계속할 수 없는 경우 호출에 실패합니다.
기본 미니포트 드라이버가 호출 매개 변수를 설정하거나 재설정하라는 요청에 실패하면 호출 관리자는 CallParameters 에서 원래 사양을 수정하고 NdisCmActivateVc 를 다시 호출할 수 있습니다. 호출 관리자가 VC를 활성화하려고 반복적으로 시도하는 횟수에 대한 제한은 구현에 따라 다릅니다.

클라이언트에서 시작한 발신 호출의 경우 독립 실행형 CM은 일반적으로 NdisCmMakeCallComplete로 나가는 호출 완료를 NDIS(및 클라이언트)에 알리기 전에 패킷 교환 직후 NdisCmActivateVc를 호출하여 통화의 원격 대상과 협상된 계약을 확인하거나 스위치에서 성공적인 호출 설정을 확인합니다. 수신 전화의 경우 호출 관리자는 일반적으로 NdisCoCreateVc 를 성공적으로 호출한 후 호출하기 전에 NdisCmActivateVc 를 호출합니다. NdisCmDispatchIncomingCall.

발신 호출을 설정하는 과정에서 모든 VC가 활성화된 상태로 유지되는 동안 클라이언트는 NdisClModifyCallQos를 호출하여 해당 VC에 대한 호출 매개 변수에 대한 변경 내용을 요청할 수 있습니다. 이러한 요청에 대해 지정된 호출 매개 변수의 유효성을 확인한 후 독립 실행형 호출 관리자는 NdisCmActivateVc 를 호출하여 수정된 호출 매개 변수를 기본 미니포트 드라이버로 전달해야 합니다.

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

요구 사항

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

참고 항목

CO_CALL_PARAMETERS

MiniportCoActivateVc

NdisClMakeCall

NdisClModifyCallQos

NdisCmDeactivateVc

NdisCmDispatchIncomingCall

NdisCoCreateVc

NdisMCmActivateVc

ProtocolCmActivateVcComplete

ProtocolCoCreateVc