?? wsnmp32.bas
字號:
' Values used to indicate retransmit mode in the implementationGlobal Const SNMPAPI_OFF = 0Global Const SNMPAPI_ON = 1' WinSNMP API Function Return CodesGlobal Const SNMPAPI_FAILURE = 0Global Const SNMPAPI_SUCCESS = 1' WinSNMP API Error Codes (for SnmpGetLastError())' (NOT PDU error status codes)Global Const SNMPAPI_ALLOC_ERROR = 2 'Error allocating memoryGlobal Const SNMPAPI_CONTEXT_INVALID = 3 'Invalid context parameterGlobal Const SNMPAPI_CONTEXT_UNKNOWN = 4 'Unknown context parameterGlobal Const SNMPAPI_ENTITY_INVALID = 5 'Invalid entity parameterGlobal Const SNMPAPI_ENTITY_UNKOWN = 6 'Unknown entity parameterGlobal Const SNMPAPI_INDEX_INVALID = 7 'Invalid VBL index parameterGlobal Const SNMPAPI_NOOP = 8 'No operation performedGlobal Const SNMPAPI_OID_INVALID = 9 'Invalid OID parameterGlobal Const SNMPAPI_OPERATION_INVALID = 10 'Invalid/unsupported operationGlobal Const SNMPAPI_OUTPUT_TRUNCATED = 11 'Insufficient output buffer lengthGlobal Const SNMPAPI_PDU_INVALID = 12 'Invalid PDU parameterGlobal Const SNMPAPI_SESSION_INVALID = 13 'Invalid session parameterGlobal Const SNMPAPI_SYNTAX_INVALID = 14 'Invalid syntax in smiVALUE variableGlobal Const SNMPAPI_VBL_INVALID = 15 'Invalid VBL parameterGlobal Const SNMPAPI_MODE_INVALID = 16 'Invalid mode parameterGlobal Const SNMPAPI_SIZE_INVALID = 17 'Invalid size/length parameterGlobal Const SNMPAPI_NOT_INITIALIZED = 18 'SnmpStartup failed/not calledGlobal Const SNMPAPI_MESSAGE_INVALID = 19 'Invalid SNMP message formatGlobal Const SNMPAPI_HWND_INVALID = 20 'Invalid Window handleGlobal Const SNMPAPI_OTHER_ERROR = 99 'For internal/undefined errors' Generic Transport Layer (TL) ErrorsGlobal Const SNMPAPI_TL_NOT_INITIALIZED = 100 'TL not initializedGlobal Const SNMPAPI_TL_NOT_SUPPORTED = 101 'TL does not support protocolGlobal Const SNMPAPI_TL_NOT_AVAILABLE = 102 'Network sub-system has failedGlobal Const SNMPAPI_TL_RESOURCE_ERROR = 103 'TL resource errorGlobal Const SNMPAPI_TL_UNDELIVERABLE = 104 'Destination unreachableGlobal Const SNMPAPI_TL_SRC_INVALID = 105 'Source endpoint invalidGlobal Const SNMPAPI_TL_INVALID_PARAM = 106 'Input parameter invalidGlobal Const SNMPAPI_TL_IN_USE = 107 'Source endpoint in useGlobal Const SNMPAPI_TL_TIMEOUT = 108 'No response before timeoutGlobal Const SNMPAPI_TL_PDU_TOO_BIG = 109 'PDU too big for send/receiveGlobal Const SNMPAPI_TL_OTHER = 199 'Undefined TL error' v2.0: Structure for SnmpGetVendorInfo() outputGlobal Const MAXVENDORINFO = 32Type VENDORINFO vendorName As String * 64 vendorContact As String * 64 vendorVersionId As String * 32 vendorVersionData As String * 32 vendorEnterprise As LongEnd Type' Local Database Functions' The following declarations have been tested' SnmpGetTranslateMode()' SnmpSetTranslateMode()' SnmpGetRetransmitMode()' SnmpSetRetransmitMode() - only mode 0 supported at this timeDeclare Function SnmpGetTranslateMode Lib "wsnmp32.dll" (nTransMode As Long) As LongDeclare Function SnmpSetTranslateMode Lib "wsnmp32.dll" (ByVal nTransMode As Long) As LongDeclare Function SnmpGetRetransmitMode Lib "wsnmp32.dll" (nRxTxMode As Long) As LongDeclare Function SnmpSetRetransmitMode Lib "wsnmp32.dll" (ByVal nRxTxMode As Long) As LongDeclare Function SnmpGetTimeout Lib "wsnmp32.dll" (ByVal hEntity As Long, nPolicyTO As Long, nActualTO As Long) As LongDeclare Function SnmpSetTimeout Lib "wsnmp32.dll" (ByVal hEntity As Long, ByVal nPolicyTO As Long) As LongDeclare Function SnmpGetRetry Lib "wsnmp32.dll" (ByVal hEntity As Long, nPolicyRetry As Long, nActualRetry As Long) As LongDeclare Function SnmpSetRetry Lib "wsnmp32.dll" (ByVal hEntity As Long, ByVal nPolicyRetry As Long) As Long' Following Local Database Functions added in v2.0Declare Function SnmpGetVendorInfo Lib "wsnmp32.dll" (ByRef vendInfo As VENDORINFO) As Long' Communications Functions' The following declarations have been tested' SnmpStartup()' SnmpCleanup()' SnmpOpen()' SnmpClose()' SnmpSendMsg()' SnmpRecvMsg()' SnmpRegister()Declare Function SnmpStartup Lib "wsnmp32.dll" (nVerMaj As Long, nVerMin As Long, nLevel As Long, nTMode As Long, nRMode As Long) As LongDeclare Function SnmpCleanup Lib "wsnmp32.dll" () As LongDeclare Function SnmpOpen Lib "wsnmp32.dll" (ByVal hWnd As Long, ByVal wMsg As Long) As LongDeclare Function SnmpClose Lib "wsnmp32.dll" (ByVal hSession As Long) As LongDeclare Function SnmpSendMsg Lib "wsnmp32.dll" (ByVal hSession As Long, ByVal sEntity As Long, ByVal dEntity As Long, ByVal hContext As Long, ByVal hPDU As Long) As LongDeclare Function SnmpRecvMsg Lib "wsnmp32.dll" (ByVal hSession As Long, sEntity As Long, dEntity As Long, hContext As Long, hPDU As Long) As LongDeclare Function SnmpRegister Lib "wsnmp32.dll" (ByVal hSession As Long, ByVal sEntity As Long, ByVal dEntity As Long, ByVal hContext As Long, smiCOID As OID, ByVal state As Long) As Long' SnmpRegister() needs to be aliased to SnmpRegisterNull() for "TYPE SAFE"' usage that will allow registering a NULL notification OIDDeclare Function SnmpRegisterNull Lib "wsnmp32.dll" Alias "SnmpRegister" (ByVal hSession As Long, ByVal sEntity As Long, ByVal dEntity As Long, ByVal hContext As Long, ByVal smiCOID As Long, ByVal state As Long) As Long' Following Communications Functions added in v2.0Declare Function SnmpCreateSession Lib "wsnmp32.dll" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal fCallBack As Long, ByVal lpClientData As Long) As LongDeclare Function SnmpListen Lib "wsnmp32.dll" (ByVal hEntity As Long, ByVal lStatus As Long) As LongDeclare Function SnmpCancelMsg Lib "wsnmp32.dll" (ByVal hSession As Long, ByVal ReqID As Long) As Long'' Entity/Context FUnctions' The following declarations have been tested' SnmpStrToEntity()' SnmpEntityToStr()' SnmpFreeEntity()' SnmpStrToContext()' SnmpContextToStr() - Returns length of Context String' SnmpFreeContext()Declare Function SnmpStrToEntity Lib "wsnmp32.dll" (ByVal hSession As Long, ByVal Entity As String) As LongDeclare Function SnmpEntityToStr Lib "wsnmp32.dll" (ByVal hEntity As Long, ByVal lenEntity As Long, ByVal strEntity As String) As LongDeclare Function SnmpFreeEntity Lib "wsnmp32.dll" (ByVal hEntity As Long) As LongDeclare Function SnmpStrToContext Lib "wsnmp32.dll" (ByVal hSession As Long, smiOctets As OCTETSTRING) As LongDeclare Function SnmpContextToStr Lib "wsnmp32.dll" (ByVal hContext As Long, smiOctets As OCTET) As LongDeclare Function SnmpFreeContext Lib "wsnmp32.dll" (ByVal hContext As Long) As Long' Following Entity/Context Functions added in v2.0Declare Function SnmpSetPort Lib "wsnmp32.dll" (ByVal hEntity As Long, ByVal nPort As Long) As Long' PDU Functions' The following declarations have been tested' SnmpCreatePdu()' SnmpGetPduData()' SnmpFreePdu()Declare Function SnmpCreatePdu Lib "wsnmp32.dll" (ByVal hSession As Long, ByVal typePDU As Long, ByVal ReqID As Long, ByVal errorStat As Long, ByVal errorIdx As Long, ByVal hVBL As Long) As LongDeclare Function SnmpGetPduData Lib "wsnmp32.dll" (ByVal hPDU As Long, typePDU As Long, ReqID As Long, errorStat As Long, errorIdx As Long, hVBL As Long) As LongDeclare Function SnmpSetPduData Lib "wsnmp32.dll" (ByVal hPDU As Long, typePDU As Long, ReqID As Long, errorStat As Long, errorIdx As Long, hVBL As Long) As LongDeclare Function SnmpDuplicatePdu Lib "wsnmp32.dll" (ByVal hSession As Long, ByVal hPDU As Long) As LongDeclare Function SnmpFreePdu Lib "wsnmp32.dll" (ByVal hPDU As Long) As Long' Variable Binding Functions' The following declarations have been tested' SnmpCreateVbl()' SnmpFreeVbl()' SnmpCountVbl()' SnmpGetVb()' SnmpSetVb()Declare Function SnmpCreateVbl Lib "wsnmp32.dll" (ByVal hSession As Long, VarOID As OID, VarVal As Any) As LongDeclare Function SnmpDuplicateVbl Lib "wsnmp32.dll" (ByVal hSession As Long, ByVal hVBL As Long) As LongDeclare Function SnmpFreeVbl Lib "wsnmp32.dll" (ByVal hVBL As Long) As LongDeclare Function SnmpCountVbl Lib "wsnmp32.dll" (ByVal hVBL As Long) As LongDeclare Function SnmpGetVb Lib "wsnmp32.dll" (ByVal hVBL As Long, ByVal Index As Long, VarOID As OID, VarVal As VALUEOCTET) As LongDeclare Function SnmpSetVb Lib "wsnmp32.dll" (ByVal hVBL As Long, ByVal Index As Long, VarOID As OID, VarVal As Any) As LongDeclare Function SnmpDeleteVb Lib "wsnmp32.dll" (ByVal hVBL As Long, ByVal Index As Long) As Long' SnmpCreateVbl() needs to be aliased to SnmpCreateIntVbl(),' SnmpCreateOctVbl(), SnmpCreateOidVbl(), SnmpCreateC64Vbl() for "TYPE SAFE" usageDeclare Function SnmpCreateIntVbl Lib "wsnmp32.dll" Alias "SnmpCreateVbl" (ByVal hSession As Long, VarOID As OID, VarVal As VALUEINT) As LongDeclare Function SnmpCreateOctVbl Lib "wsnmp32.dll" Alias "SnmpCreateVbl" (ByVal hSession As Long, VarOID As OID, VarVal As VALUEOCTET) As LongDeclare Function SnmpCreateOidVbl Lib "wsnmp32.dll" Alias "SnmpCreateVbl" (ByVal hSession As Long, VarOID As OID, VarVal As VALUEOID) As LongDeclare Function SnmpCreateC64Vbl Lib "wsnmp32.dll" Alias "SnmpCreateVbl" (ByVal hSession As Long, VarOID As OID, VarVal As VALUECNTR64) As Long' SnmpSetVb() needs to be aliased to SnmpSetIntVb(), SnmpSetOctVb(),' SnmpSetOidVb(), SnmpSetC64Vb() for "TYPE SAFE" usageDeclare Function SnmpSetIntVb Lib "wsnmp32.dll" Alias "SnmpSetVb" (ByVal hVBL As Long, ByVal Index As Long, VarOID As OID, VarVal As VALUEINT) As LongDeclare Function SnmpSetOctVb Lib "wsnmp32.dll" Alias "SnmpSetVb" (ByVal hVBL As Long, ByVal Index As Long, VarOID As OID, VarVal As VALUEOCTET) As LongDeclare Function SnmpSetOidVb Lib "wsnmp32.dll" Alias "SnmpSetVb" (ByVal hVBL As Long, ByVal Index As Long, VarOID As OID, VarVal As VALUEOID) As LongDeclare Function SnmpSetC64Vb Lib "wsnmp32.dll" Alias "SnmpSetVb" (ByVal hVBL As Long, ByVal Index As Long, VarOID As OID, VarVal As VALUECNTR64) As Long' Utility Functions' The following declarations have been tested' SnmpGetLastError()' SnmpStrToOid()' SnmpOidToStr()' SnmpFreeDescriptor()Declare Function SnmpGetLastError Lib "wsnmp32.dll" (ByVal hSession As Long) As LongDeclare Function SnmpStrToOid Lib "wsnmp32.dll" (ByVal strOID As String, dstOID As OID) As LongDeclare Function SnmpOidToStr Lib "wsnmp32.dll" (srcOID As OID, ByVal size As Long, ByVal strOID As String) As LongDeclare Function SnmpOidCopy Lib "wsnmp32.dll" (srcOID As OID, dstOID As OID) As LongDeclare Function SnmpOidCompare Lib "wsnmp32.dll" (xOID As OID, yOID As OID, ByVal maxLen As Long, Result As Long) As LongDeclare Function SnmpEncodeMsg Lib "wsnmp32.dll" (ByVal hSession As Long, ByVal srcEntity As Long, ByVal dstEntity As Long, ByVal hContext As Long, ByVal hPDU As Long, msgBuff As OCTET) As LongDeclare Function SnmpDecodeMsg Lib "wsnmp32.dll" (ByVal hSession As Long, srcEntity As Long, dstEntity As Long, hContext As Long, hPDU As Long, msgBuff As OCTET) As LongDeclare Function SnmpFreeDescriptor Lib "wsnmp32.dll" (ByVal syntax As Long, Descriptor As Any) As Long' SnmpFreeDescriptor needs to be Aliased to create SnmpFreeDescOct() &' SnmpFreeDescOid() for "TYPE SAFE" usageDeclare Function SnmpFreeDescOct Lib "wsnmp32.dll" Alias "SnmpFreeDescriptor" (ByVal syntax As Long, Descriptor As OCTET) As LongDeclare Function SnmpFreeDescOid Lib "wsnmp32.dll" Alias "SnmpFreeDescriptor" (ByVal syntax As Long, Descriptor As OID) As Long
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -