snmptools 1.0.0.0 first version 1.0.0.1 decimal separator forced to '.' 1.0.0.2 fixed : wait for snmpextensioninit to enumerate objects 1.0.0.3 fixed : snmp walk returns the right status when no more objects to walk 1.0.0.4 added : more debug outputs fixed : oid:=nil in snmpextensionquery todo : act a "proxy" & get remote perf objects... ? todo : handle multi oid in one request 1.0.0.5 added : hardcoded oid's based on ini files added : can also send string or stdoutput from external executables 1.0.0.6 fixed : in counters.ini, will not send default instance value if specified instance does not exists todo : implement snmp set todo : manage snmpwalk with ini file 1.0.0.7 modified : use VarIsFloat to check type of returned value added : will manage all local separator decimal (and not only the ",") 1.0.0.8 added : enable counter flags in the ini file to get a specific counter when 2 same counternames exist if no flag specified, will not use perf counters with PERF_DISPLAY_NOSHOW flag (example of % disk time) 1.0.0.9 added : can compile with FPC added : cross compiled with fpc for x86_64 / win64 (only the exec oid flag works for now) 2.0.0.1 modified : switched to pdh api (via jwapdh) for x64 compatibility (does not work yet) modified : switch jwasnmp headers for higher compatibility modified : works only with a counters.ini file now modified : counters are formatted now by default modified : better memory mgmt added : snmp getnext support added : flag="raw" under counter section will return raw instead of formatted counter 2.0.0.2 fixed : a bug with instances='' 2.0.0.3 added : SnmpExtensionQueryEx implementation (to support snmp v2c request types) 2.0.0.4 fixed : "SnmpExtensionQueryEx: List index out of bounds" on last oid in getnext request 2.0.0.5 added : flag="hi" or "lo" supported to retrieve the hi or lo part of an int64 value added : multiple flags ok like flag=raw,hi (will help getting dword simple counter values under win64) added : a reg file to run the snmptools 32bits edition under win64 added : flag="norefresh" to skip first PdhCollectQueryData (takes 1 sec) 2.0.0.6 modified : will use PDH_FMT_DOUBLE if counter type=PERF_SIZE_LARGE else will use PDH_FMT_LONG todo : implement traps 2.0.0.7 added : SnmpExtensionTrap support (registry key "traps" = "c:\traps.ini" in registry). message=script output todo : manage request with pVarBindList.len >1 2.0.0.8 added : support for pVarBindList.len >1 (multiple oid in one request like SPINE) fixed : "if size>0 then" in makepath function (result of PdhMakeCounterPathA is not consistent) fixed : "VarIsFloat" dropped in formatvalue function (would not work on some o.s and thus would not convert the ",") added : new flags "swap64" (hi<->lo), "cdbl" (int64 to double) modified : will send asn_counter64 instead of asn_integer32 when value>high(integer) (snmp v2 and up) fixed : win64 agent will use PDH_FMT_LARGE instead of PDH_FMT_DOUBLE (what about floats then?) modified : win64 agent will always return PdhFmtCounterValue.largeValue fixed : formatted perf_type_number counters tested oki in win64 mode (what about perf_type_counter?) 2.0.0.9 fixed : SnmpExtensionTrap will send all traps in one single snmp message modified : will send a message (made of one or multi traps) only if at least one trap contains data added : trap_delay registry key (default=15000ms) to modify time between 2 runs 2.0.0.10 modified : up to 65535 counters in ini file 2.0.0.11 added : can choose agent OID thru "OID" regsitry key 2.0.0.12 fixed : "\" characters in the instance name is now handled correctly todo : comparemem to oidprefix in getrequest 2.0.0.13 fixed : memory allocation error on PdhGetCounterInfo fixed : will not read all oid's in each snmpgetnext but only up to the requested oid 2.0.0.14 fixed : bug in tinifile.readsections (buffer limited to 16384 extended to 16384*2) todo : multiply and div flags 2.0.0.15 added : new reg key "collect_delay"(dword) to control the time between 2 perf snapshot (default=1000ms) modified : PDH_FMT_NOSCALE added to PdhGetFormattedCounterValue / PdhCalculateCounterFromRawValue fixed : raw counters (flag="raw") fully supported thru PdhCalculateCounterFromRawValue added : new flag "round" to round a float number to integer (not sure all snmp clients like float in strings) modified : asn_counter64 does not work for now, back to ASN_OCTETSTRING for 64bits values 2.0.0.16 modified : will use by default PDH_FMT_DOUBLE in win32 mode todo : look at ExpandPath (for wildcards) and Scales 2.0.0.17 modified : GetRawValue/GetFormattedValue will return null not 'null' when counter has null value modified : getperf3 will return '' not 'null' when value is null added : use PdhremoveCounterA in closequery todo : consider PdhAddEnglishCounter for vista and up todo : consider PdhExpandWildCardPath modified : memory tune up (no more default buffer size) 2.0.0.18 modified : trigger trap only if data <> empty added : div and mult flags (flag=div 1024 or flag=div 1024,round) todo : SnmpExtensionMonitor