SNMP Toolkit and SNMP Builder for Visual Basic Strings with Embedded
Zeroes
Q.
How would you handle embedded zeroes in SNMP variables? (Such as string truncation, etc.)
A.
Use the CVarBind.binval property. This property accesses variable
values as a Byte array. This ensures proper handling of embedded zeroes.
Look up the reference and guide for examples on how to use the
CVarBind.binval property.
SNMP Toolkit and SNMP Builder for C++ Linker Problems
Q.
How would you handle linker errors?
A.
Set the project setting to multithreaded. Link with a proper library depending
on which project option is set:
building multithreaded debug/release or multithreaded DLL debug/release.
Look in the reference manual for details on which library to link with.
SNMP Toolkit for Borland C++ Builder
Problem:
The compile and link were successful under BCB 3 and 4. Execution of the application built
with BCB 4 is OK, but the application built with BCB 3 terminates abnormally with the
error message:
"Access violation at address BFF9A57C in module 'KERNEL32.DLL'. Write of
address 00000000"
Solution:
In the project/options/linker uncheck, use dynamic RTL, it will remove -D_RTLDLL from the flags and
the program will run successfully.
Problem:
There are link errors in BCB 3.
Solution:
Use the BCB 3 SNMP library. BCB v3 and v4 use different version of STL. Therefore the
corresponding SNMP library shipped with the toolkit should be used with the Borland IDE.
Installation utility copies both libraries to the toolkit directory on the
hard drive but only one is placed in the LIB directory and is usually used in
project builds. To correct problem you can copy library from toolkit\LIB\BCB3 for BCB 3 or
toolkit\LIB\BCB4 for BCB 4 to the toolkit\LIB directory.
SNMP Toolkit for Visual Basic
Q.
Does SNMP control increment the requestID of the pdu (for a send)? Is it
proper to set the requestID in a pdu to a value, or does the control
automatically select the next highest requestID?
A.
If the requests are sent without retransmissions the requestID must be set.
When a command generator doesn't receive a response it should send the request again
with the same requestID. While using send methods with automatic retransmissions the
requestIDs are set automatically by the control and the command generator does not
have to set requestID properties of outgoing PDUs.
|