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


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

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

Функция SnmpStartupEx уведомляет реализацию Microsoft WinSNMP о том, что приложению WinSNMP требуются службы реализации. Функция SnmpStartupEx WinSNMP позволяет реализации инициализировать и возвращать приложению версию интерфейса windows SNMP (API WinSNMP), уровень snmp-связи, поддерживаемый реализацией, а также режимы преобразования и повторной передачи по умолчанию.

Эту функцию следует использовать вместо SnmpStartup , если установлена Windows Server 2003 с пакетом обновления 1 (SP1) или более поздней версии. SnmpStartupEx обеспечивает поддержку нескольких независимых программных модулей, использующих WinSNMP в одном приложении.

Примечание Приложение WinSNMP должно успешно вызвать функцию SnmpStartupEx , прежде чем вызывать любую другую функцию WinSNMP.
 

Синтаксис

SNMPAPI_STATUS SNMPAPI_CALL SnmpStartupEx(
  [out] smiLPUINT32 nMajorVersion,
  [out] smiLPUINT32 nMinorVersion,
  [out] smiLPUINT32 nLevel,
  [out] smiLPUINT32 nTranslateMode,
  [out] smiLPUINT32 nRetransmitMode
);

Параметры

[out] nMajorVersion

Указатель на переменную с длинным целым числом без знака, чтобы получить основной номер версии API WinSNMP, поддерживаемый реализацией. Например, чтобы указать, что реализация поддерживает WinSNMP версии 2.0, функция возвращает значение 2.

[out] nMinorVersion

Указатель на переменную с длинным целым числом без знака, чтобы получить дополнительный номер версии API WinSNMP, поддерживаемый реализацией. Например, чтобы указать, что реализация поддерживает WinSNMP версии 2.0, функция возвращает значение 0.

[out] nLevel

Указатель на переменную с длинным целым числом без знака, чтобы получить самый высокий уровень snmp-связи, поддерживаемых реализацией. После успешного возврата этот параметр содержит значение 2. Описание поддержки уровня 2 см. в разделе Уровни поддержки SNMP.

[out] nTranslateMode

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

Значение Значение
SNMPAPI_TRANSLATED
Реализация использует свою базу данных для преобразования понятных имен для сущностей SNMP и управляемых объектов. Реализация преобразует их в компоненты SNMPv1 или SNMPv2C.
SNMPAPI_UNTRANSLATED_V1
Реализация интерпретирует параметры сущности SNMP как транспортные адреса SNMP, а параметры контекста — как строки сообщества SNMP. Для целевых сущностей SNMPv2 реализация создает исходящие СООБЩЕНИЯ SNMP, содержащие нулевое значение в поле версии.
SNMPAPI_UNTRANSLATED_V2
Реализация интерпретирует параметры сущности SNMP как транспортные адреса SNMP, а параметры контекста — как строки сообщества SNMP. Для конечных сущностей SNMPv2 реализация создает исходящие СООБЩЕНИЯ SNMP, содержащие значение 1 в поле версии.
 

Дополнительные сведения см. в разделе Настройка режима преобразования сущностей и контекста.

[out] nRetransmitMode

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

Значение Значение
SNMPAPI_OFF
Реализация не выполняет политику повторной передачи приложения WinSNMP.
SNMPAPI_ON
Реализация выполняет политику повторной передачи приложения WinSNMP.
 

Дополнительные сведения см. в разделе Сведения о повторной отправке.

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

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

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

Код возврата Описание
SNMPAPI_TL_RESOURCE_ERROR
Во время запуска произошла ошибка выделения ресурсов.
SNMPAPI_TL_NOT_INITIALIZED
Функция SnmpStartupEx инициализировалась неправильно.
SNMPAPI_ALLOC_ERROR
Произошла ошибка при выделении памяти.
SNMPAPI_OTHER_ERROR
Произошла неизвестная или неопределенная ошибка.

Комментарии

Приложение WinSNMP должно успешно вызвать функцию SnmpStartupEx по крайней мере один раз, прежде чем вызывать любую другую функцию WinSNMP. Если приложение WinSNMP вызывает другую функцию WinSNMP до успешного вызова SnmpStartupEx, реализация возвращает ошибку SNMPAPI_NOT_INITIALIZED.

Приложение WinSNMP может вызвать SnmpGetLastError для получения сведений об ошибке или повторить попытку SnmpStartupEx в случае сбоя вызова функции SnmpStartupEx . Когда SnmpStartupEx возвращает SNMPAPI_FAILURE, а последующий вызов SnmpGetLastError возвращает SNMP_ALLOC_ERROR, приложение WinSNMP может выбрать вариант ожидания. Он может повторить вызов SnmpStartupEx , если реализация имеет достаточно свободных ресурсов.

Приложение WinSNMP должно вызывать SnmpCleanupEx для каждого успешного вызова SnmpStartupEx. Реализация WinSNMP выполняет окончательную очистку, когда отсутствуют невыполненные успешные вызовы SnmpStartup или SnmpStartupEx.

Дополнительные сведения см. в разделах Уровни поддержки SNMP и Сведения о версиях SNMP.

Требования

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

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

SnmpCleanupEx

SnmpStrToContext

SnmpStrToEntity

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

Функции WinSNMP