我正在按照下面的教程創建一個擴展代理DLL。我按照下面的教程:http://www.codeproject.com/KB/IP/SNMP_Agent_DLL__Part1_.aspx與開發SNMP擴展代理DLL有關嗎?
按照教程,我需要在等最低限度使用這些1的方法簽名:
BOOL SNMP_FUNC_TYPE SnmpExtensionQuery(BYTE bPduType,
SnmpVarBindList *pVarBindList,
AsnInteger32 *pErrorStatus,
AsnInteger32 *pErrorIndex)
的問題是與SnmpVarBindList * pVarBindList參數。我支持在SnmpVarBindList數據類型中插入以下數據,例如(「關於」,「名稱」,「年齡」)並將其傳遞到上面的方法中...
但我不確定如何創建SnmpVarBindList數據類型的列表並將以下數據(例如(「關於」,「名稱」,「年齡」)插入列表中?
MIB_ENTRY g_MyMibTable[] = {
{
{OID_SIZEOF(g_unAboutOid),g_unAboutOid},
&g_szAbout,
"About",
ASN_OCTETSTRING,
SNMP_ACCESS_READ_ONLY,
&g_MyMibTable[1]
},
{
{OID_SIZEOF(g_unNameOid),g_unNameOid},
&g_szName,
"Name",
ASN_OCTETSTRING,
SNMP_ACCESS_READ_WRITE,
&g_MyMibTable[2]
},
{
{OID_SIZEOF(g_unAgeOid),g_unAgeOid},
&g_asnIntAge,
"Age",
ASN_INTEGER,
SNMP_ACCESS_READ_WRITE,
NULL
}
};
============================================== ============================================ // struct definations for您的參考:
typedef struct {
AsnObjectName name;
AsnObjectSyntax value;
} SnmpVarBind;
typedef struct {
SnmpVarBind * list;
UINT len;
} SnmpVarBindList;
任何指導或代碼示例提供將非常感激,我是新來的C++
真誠,
謝謝JP。另外,如何不使用硬編碼值,我需要在SnmpExtensionInit方法內調用BOOL SNMP_FUNC_TYPE SnmpExtensionQuery(BYTE bPduType,SnmpVarBindList * pVarBindList,AsnInteger32 * pErrorStatus,AsnInteger32 * pErrorIndex)正確? – user848007