Функция SnmpDeleteVb (winsnmp.h)

[SNMP доступен для использования в операционных системах, указанных в разделе Требования. В последующих версиях он может быть изменен или недоступен. Вместо этого используйте удаленное управление Windows, которое является реализацией WS-Man майкрософт.]

Функция WinSNMP SnmpDeleteVb удаляет запись привязки переменной из списка привязок переменных.

Синтаксис

SNMPAPI_STATUS SNMPAPI_CALL SnmpDeleteVb(
  [in] HSNMP_VBL vbl,
  [in] smiUINT32 index
);

Параметры

[in] vbl

Обработка списка привязок переменных для обновления.

[in] index

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

Допустимые значения для этого параметра находятся в диапазоне от 1 до n, где 1 обозначает первую запись привязки переменной в списке привязок переменных, а n — общее количество записей в списке привязок переменных. Дополнительные сведения см. в следующем разделе Примечаний.

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

Если функция выполнена успешно, возвращаемое значение будет SNMPAPI_SUCCESS.

Если функция завершается сбоем, возвращаемое значение будет SNMPAPI_FAILURE. Чтобы получить расширенные сведения об ошибке, вызовите SnmpGetLastError. Функция SnmpGetLastError может возвращать одну из следующих ошибок.

Код возврата Описание
SNMPAPI_NOT_INITIALIZED
Функция SnmpStartup не была успешно завершена.
SNMPAPI_ALLOC_ERROR
Произошла ошибка при выделении памяти.
SNMPAPI_INDEX_INVALID
Недопустимый параметр index .
SNMPAPI_VBL_INVALID
Недопустимый параметр vbl .
SNMPAPI_OTHER_ERROR
Произошла неизвестная или неопределенная ошибка.

Комментарии

Приложение WinSNMP может использовать функцию SnmpDeleteVb для удаления недопустимых записей привязки переменных. Если SNMP_PDU_RESPONSE единица данных протокола (PDU) содержит ошибку, указывающую на недопустимую запись привязки переменной, приложение может вызвать SnmpDeleteVb , чтобы удалить запись. Затем приложение может повторно отправить PDU запроса с вызовом функции SnmpSendMsg без недопустимой записи привязки переменной в списке привязок переменных. PDU запроса включают типы данных SNMP_PDU_GET, SNMP_PDU_GETNEXT и SNMP_PDU_GETBULK PDU.

После того как функция SnmpDeleteVb удаляет запись привязки переменной, значение индекса всех записей после удаленной записи уменьшится на один. Вызов функции SnmpCountVbl возвращает новое общее количество записей в списке привязок переменных. Новый итог на один меньше счетчика, возвращенного вызовом SnmpCountVbl перед текущим вызовом SnmpDeleteVb.

Если приложение WinSNMP вызывает функцию SnmpDeleteVb и удаляет последнюю запись привязки переменной в списке привязок переменных, результатом будет пустой список привязок переменных. Список привязок переменных по-прежнему имеет допустимый дескриптор, и приложение WinSNMP должно освободить дескриптор с вызовом функции SnmpFreeVbl .

Ниже приведены допустимые значения для параметра index :

  • Возвращаемое значение при вызове функции SnmpCountVbl
  • Поле индекса ошибки SNMP_PDU_RESPONSE PDU, возвращаемого вызовом функции SnmpRecvMsg

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winsnmp.h
Библиотека Wsnmp32.lib
DLL Wsnmp32.dll

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

SnmpCountVbl

SnmpFreeVbl

SnmpRecvMsg

Функции WinSNMP

Общие сведения об API WinSNMP