Преобразование OID SNMP в описательные имена в Win32

Каков рекомендуемый способ преобразования SNMP OID в их эквивалентные описательные имена?

то есть с 1.3.6.1.2.1.1.9.1.4.7 по SNMPv2-MIB::sysORUpTime.7

Я кодирую на С++, платформа должна быть XP и выше, и ищу довольно быстрый и компактный способ сделать это.

Я знаю, что libsmi или net-snmp могут это сделать, но есть ли что-то непосредственно в Win32 API, что может это сделать?

Кроме того, я знаю, что необходимо будет установить необходимые файлы MIB - существует ли «централизованное» место для файлов MIB в Windows?


person Roddy    schedule 12.11.2010    source источник


Ответы (1)


  1. У Microsoft нет Win32 API для такого преобразования (ближайшее, что есть, это Управление идентификаторами объектов). Так что libsmi еще впереди. Или вы можете вызвать процесс snmptranslate.

  2. Если вы используете netsnmp API, вы должны использовать его местоположение для хранения файлов MIB. Windows обычно хранит файлы MIB в %windir%\system32, но это расположение бесполезно, поскольку у Microsoft нет нужного вам API.

person Lex Li    schedule 13.11.2010
comment
Спасибо. Либсми, значит :-) - person Roddy; 13.11.2010