2011-09-07 20 views

答えて

10

ここで、net-snmpライブラリを使用してMIBファイルを解析するサンプルコードを示します。 このコードを使用する前に、プロジェクトプロパティでnet-snmpのインクルードとライブラリディレクトリを参照または追加する必要があります。

#include "stdafx.h" 
#include <net-snmp/net-snmp-config.h> 
#include <net-snmp/net-snmp-includes.h> 
#include <net-snmp/definitions.h> 
#include <net-snmp/library/tools.h> 
#include <net-snmp/mib_api.h> 
#include <net-snmp/library/mib.h> 
#include <net-snmp/library/parse.h> 

int _tmain(int argc, _TCHAR* argv[]) 
{ 
    struct tree *tp; 
    struct tree *tree_head = NULL ; 
    FILE *fp = NULL; 

    char str[] = "c:\\MyMIBFileDir\\My.mib"; 

    netsnmp_ds_set_int(NETSNMP_DS_LIBRARY_ID, NETSNMP_DS_LIB_MIB_WARNINGS , 2); 
    netsnmp_ds_toggle_boolean(NETSNMP_DS_LIBRARY_ID, NETSNMP_DS_LIB_SAVE_MIB_DESCRS); 

    netsnmp_init_mib(); 

    add_mibdir("c:\\MyMIBFileDir\\"); 

    tree_head = read_mib(str); 

    if (tree_head) 
    { 
     //Successfully parsed the MIB 
    } 

    // Full traversal of the subtree 
    for (tp = tree_head; tp; tp = tp->next_peer) 
     // Here you can do custom parsing 

    fclose(fp); 

    return 0; 
} 
関連する問題