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

NdisCoDeleteVc уничтожает созданный вызывающим абонентом VC.

Синтаксис

NDIS_STATUS NdisCoDeleteVc(
  [in] NDIS_HANDLE NdisVcHandle
);

Параметры

[in] NdisVcHandle

Указывает дескриптор, определяющий удаляемую VC. Вызывающий объект изначально получил этот дескриптор из NdisCoCreateVc.

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

NdisCoDeleteVc может возвращать одно из следующих данных:

Код возврата Описание
NDIS_STATUS_SUCCESS
NDIS удалил VC.
NDIS_STATUS_NOT_ACCEPTED
VC по-прежнему активен, поэтому его не удалось удалить.
NDIS_STATUS_CLOSING
Этот вызов является избыточным, но деактивация в заданном VC все еще ожидается.

Комментарии

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

  • Если удаление вызова было инициировано локальным клиентом, он уже вызвал NdisClCloseCall с заданным NdisVcHandle , и его запрос на завершение вызова успешно завершен.
  • Если удаление вызова было инициировано удаленным клиентом, автономный диспетчер вызовов уже вызвал NdisCmDeactivateVc с заданным NdisVcHandle , и его запрос на деактивацию успешно завершен.
Только протокол, создавший определенный VC, может удалить этот VC. Вызов NdisCoDeleteVc приводит к тому, что NDIS вызывает как функцию MiniportCoDeleteVc базового драйвера miniportCoDeleteVc , так и функцию ProtocolCoDeleteVc клиента или диспетчера вызовов, с которым вызывающий объект использует NdisVcHandle .

Когда NdisCoDeleteVc возвращает элемент управления, NdisVcHandle становится недействительным.

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

Требования

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

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

MiniportCoDeleteVc

NdisClCloseCall

NdisCmDeactivateVc

NdisCoCreateVc

NdisMCmDeleteVc

ProtocolCloseCallComplete

ProtocolClIncomingCloseCall

ProtocolCmCloseCall

ProtocolCoDeleteVc