Макрос NdisMCmAddPartyComplete (ndis.h)

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

Синтаксис

void NdisMCmAddPartyComplete(
   _S_,
   _H_,
   _C_,
   _P_
);

Параметры

_S_

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

_H_

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

_C_

Указывает дескриптор для выделенной вызывающей стороной области резидентного контекста, в которой драйвер MCM будет хранить сведения о состоянии конкретной стороны, если операция надстройки выполнена успешно. В противном случае этот параметр может иметь значение NULL , так как он игнорируется NDIS, если status имеет значение, отличное от NDIS_STATUS_SUCCESS.

_P_

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

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

None

Remarks

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

Базовый сетевой носитель определяет, может ли клиент указывать параметры трафика для стороннего трафика в многоточечных виртуальных серверах.

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

  • Сбросьте параметры трафика до тех, которые уже установлены для многоточечных VC при успешном добавлении стороны в этот VC.
  • При успешном добавлении новой стороны измените параметры трафика для каждой стороны, уже существующей в VC.
  • Отклоните запрос на добавление новой стороны. (Эта альтернатива неявно заставляет клиентов настраивать параметры трафика для многоточечных VC с помощью NdisClMakeCall и указывать одни и те же параметры трафика при каждом последующем вызове NdisClAddParty для заданного многоточечных VC.)
Если драйвер MCM задает состояние NDIS_STATUS_SUCCESS, он должен предоставить явный дескриптор, который обычно является указателем на область состояния, выделенную драйвером для каждого участника, как CallMgrPartyContext при вызове NdisMCmAddPartyComplete.

Вызов NdisMCmAddPartyComplete приводит к тому, что NDIS вызывает клиент Функция ProtocolClAddPartyComplete .

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

Требования

Требование Значение
Минимальная версия клиента Поддерживается для драйверов NDIS 6.0 и NDIS 5.1 (см. раздел NdisMCmAddPartyComplete (NDIS 5.1)) в Windows Vista. Поддерживается для драйверов NDIS 5.1 (см. раздел NdisMCmAddPartyComplete (NDIS 5.1)) в Windows XP.
Целевая платформа Персональный компьютер
Верхняя часть ndis.h (включая Ndis.h)
IRQL <= DISPATCH_LEVEL
Правила соответствия DDI Irql_MCM_Function(ndis)

См. также раздел

CO_CALL_PARAMETERS

NdisAllocateFromNPagedLookasideList

NdisClAddParty

NdisCmAddPartyComplete

NdisMCmDropPartyComplete

ProtocolClAddPartyComplete

ProtocolCmAddParty