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

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

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

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

Синтаксис

SNMPAPI_STATUS SNMPAPI_CALL SnmpStartup(
  [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_NOT_INITIALIZED
Функция SnmpStartup не была успешно завершена.
SNMPAPI_ALLOC_ERROR
Произошла ошибка при выделении памяти.
SNMPAPI_OTHER_ERROR
Произошла неизвестная или неопределенная ошибка.

Комментарии

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

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

Приложение WinSNMP может вызывать SnmpStartup несколько раз. Например, может потребоваться повторить вызов функции по причинам, описанным выше. Приложение WinSNMP также должно вызвать SnmpCleanup по крайней мере один раз, как последний вызов функции WinSNMP перед завершением. Для нескольких вызовов SnmpStartup не требуется несколько вызовов SnmpCleanup .

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

Требования

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

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

SnmpCleanup

SnmpStrToContext

SnmpStrToEntity

Функции WinSNMP

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