Я новичок в SNMP, но я хочу использовать его для настройки точки доступа Wi-Fi на основе информации, предоставленной пользователем. Моя проблема в том, что я не могу правильно установить Net-SNMP в моем проекте Visual Studio.
Я много искал, но не мог найти решение, которое работает для меня.
До сих пор я установил Net-SNMP 5.8 на мою машину из установщика source-forge. У меня есть папка snmp в C:\usr
и в C:\Program Files\net-snmp-5.8
. Из командной строки я могу использовать команды SET / GET, чтобы это работало. Сейчас я пытаюсь использовать Net-SNMP в Visual Studio, чтобы я мог использовать команды из сценария в моем проекте C++.
Это простой скрипт, который я нашел и изменил для тестирования Net-SNMP на VS.
#include <net-snmp/net-snmp-config.h>
#include <net-snmp/net-snmp-includes.h>
#include <string.h>
std::string oiids = ".1.3.6.1.4.1.30429.1.3.2.1.0";
struct snmp_session session, *ss;
struct snmp_pdu *pdu;
struct snmp_pdu *response;
oid anOID[MAX_OID_LEN];
size_t anOID_len = MAX_OID_LEN;
// netsnmp_variable_list *vars;
int status;
init_snmp("APC Check");
snmp_sess_init(&session);
ss = snmp_open(&session);
session.peername = "192.168.1.253";
session.community = (u_char *) "private";
session.community_len = strlen("private");
session.version = SNMP_VERSION_2c;
ss = snmp_open(&session);
pdu = snmp_pdu_create(SNMP_MSG_GET);
read_objid(oiids.c_str(), anOID, &anOID_len);
snmp_add_null_var(pdu, anOID, anOID_len);
status = snmp_synch_response(ss, pdu, &response);
for (variable_list * vars = response->variables; vars; vars = vars->next_variable)
print_variable(vars->name, vars->name_length, vars);
if (response)
snmp_free_pdu(response);
snmp_close(ss);
Я пытался добавить все файлы .h в свой проект, но теперь у меня отсутствуют функции, потому что я не думаю, что у меня есть весь исходный код на Си. Я готов удалить все и начать с нуля, если у кого-то есть решение.
Спасибо за любую помощь!
Замечания:
Это для проекта, над которым я работаю с разными людьми, использующими git. Должны ли они все установить Net-SNMP на свой компьютер или есть ли в проекте все необходимые файлы?