Jestem nowy w SNMP, ale chcę go użyć do skonfigurowania punktu dostępowego Wi-Fi na podstawie informacji podanych przez użytkownika. Mój problem polega na tym, że nie mogę poprawnie zainstalować Net-SNMP w moim projekcie Visual Studio.

Dużo szukałem, ale nie mogłem znaleźć rozwiązania, które byłoby dla mnie odpowiednie.

Do tej pory zainstalowałem Net-SNMP 5.8 na moim komputerze z instalatora Source-Forge. Mam folder SNMP C:\usroraz C:\Program Files\net-snmp-5.8. Z wiersza polecenia mogę używać poleceń SET / GET, aby działało. Teraz próbuję mieć Net-SNMP w Visual Studio, aby móc używać poleceń ze skryptu w moim projekcie C ++.

To prosty skrypt, który znalazłem i zmodyfikowałem, aby przetestować Net-SNMP na 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); 

Próbowałem dodać wszystkie pliki .h do mojego projektu, ale teraz brakuje mi funkcji, ponieważ nie sądzę, że mam cały kod źródłowy C. Jestem gotowy odinstalować wszystko i zacząć od zera, jeśli ktoś ma rozwiązanie.

Dzięki za wszelką pomoc!

Uwaga:

To jest projekt, nad którym pracuję z różnymi osobami korzystającymi z git. Czy wszyscy musieliby zainstalować Net-SNMP na swoim komputerze, czy też istnieje sposób, aby mieć wszystkie niezbędne pliki w projekcie?

MortZ
źródło