Поделиться через


Функция NdisCmAddPartyComplete (ndis.h)

NdisCmAddPartyComplete возвращает окончательное состояние запроса клиента, для которого диспетчер вызовов ранее вернулся NDIS_STATUS_PENDING, чтобы добавить сторону в установленной многоточечный VC.

Синтаксис

void NdisCmAddPartyComplete(
  [in]           NDIS_STATUS         Status,
  [in]           NDIS_HANDLE         NdisPartyHandle,
  [in, optional] NDIS_HANDLE         CallMgrPartyContext,
  [in]           PCO_CALL_PARAMETERS CallParameters
);

Параметры

[in] Status

Указывает окончательное состояние операции надстройки диспетчера вызовов либо NDIS_STATUS_SUCCESS, либо любую NDIS_STATUS_XXX, кроме NDIS_STATUS_PENDING.

[in] NdisPartyHandle

Указывает дескриптор, определяющий сторону. Этот дескриптор входил в функцию диспетчера вызовов ProtocolCmAddParty.

[in, optional] CallMgrPartyContext

Указывает дескриптор выделенной абонентом области контекста резидента, в которой диспетчер вызовов будет поддерживать сведения о состоянии конкретной стороны, если операция надстройки выполнена успешно. В противном случае этот параметр может быть null, так как он игнорируется.

[in] CallParameters

Указатель на структуру типа CO_CALL_PARAMETERS, которая содержит параметры вызова, первоначально предоставленные клиентом, для добавления стороной.

Возвращаемое значение

Никакой

Замечания

Если функция диспетчера автономных вызовов ProtocolCmAddPart y возвращает NDIS_STATUS_PENDING, cm впоследствии должен вызвать NdisCmAddPartyComplete, чтобы уведомить клиента и NDIS о том, что его попытка добавить сторону в многоточечный VC завершена, независимо от того, успешно или с ошибкой.

Если клиент передает параметры трафика в CallParameters, которые не совпадают с уже установленными для многоточечных VC, конструктор диспетчера вызовов должен определить, как обрабатывать это условие, при условии каких-либо ограничений, введенных сетевым носителем. К ним относятся следующие возможности:

  • Настройте параметры трафика на стороне, если базовая сетевая среда поддерживает эту функцию на виртуальных машинах с несколькими точками.
  • Сброс параметров трафика, предоставленных клиентом, для VC при выполнении исходного исходящего вызова перед вызовами CM NdisCmAddPartyComplete с NDIS_STATUS_SUCCESS в качестве состояния.
  • Измените параметры трафика для VC и для каждой стороны, подключенной к нему, на значения, предоставленные клиентом, перед вызовами CM NdisCmAddPartyComplete с NDIS_STATUS_SUCCESS в качестве состояния.
  • Сбой попытки клиента добавить сторону. (Эта альтернатива неявно заставляет клиентов настраивать параметры трафика для многоточечных VC с NdisClMakeCall и указывать те же параметры трафика при каждом последующем вызове NdisClAddParty для заданного многоточечных VC.)
Для некоторых носителей, ориентированных на подключение, параметры трафика имеют характер VC и, следовательно, идентичны для всех сторон в многоточечных VC.

Если cm задает состояние NDIS_STATUS_SUCCESS, он должен предоставить явный дескриптор, который обычно указывает на область состояния CM, выделенную для стороннего участника, так как CallMgrPartyContext при вызове NdisCmAddPartyComplete.

Вызов NdisCmAddPartyComplete приводит к вызову NDIS клиента функция ProtocolClAddPartyComplete.

Только автономные диспетчеры вызовов, которые регистрируют себя в качестве драйверов протокола NDIS, могут вызывать NdisCmAddPartyComplete. Драйверы минипорта, ориентированные на подключение, которые обеспечивают встроенную поддержку управления вызовами, NdisMCmAddPartyComplete.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается для драйверов NDIS 6.0 и NDIS 5.1 (см. NdisCmAddPartyComplete (NDIS 5.1)) в Windows Vista. Поддерживается для драйверов NDIS 5.1 (см. NdisCmAddPartyComplete (NDIS 5.1)) в Windows XP.
целевая платформа Настольный
заголовка ndis.h (include Ndis.h)
библиотеки Ndis.lib
IRQL <= DISPATCH_LEVEL
правил соответствия DDI Irql_CallManager_Function(ndis)

См. также

CO_CALL_PARAMETERS

NdisAllocateFromNPagedLookasideList

NdisClAddParty

NdisMCmAddPartyComplete

ProtocolClAddPartyComplete

ProtocolCmAddParty