Language Support  
 

The SocketTools ActiveX Edition can be used with a wide variety of programming languages and software development tools for Windows. To determine if your development language is capable of using the ActiveX Edition, it should support all of the following features:

  • It needs to support the Component Object Model (COM) specification, and support the ability to create instances of a COM object. This is typically done in one of three ways: a function call to create an instance of the object, adding the object to a project and referencing it, or placing the object on a visual form or dialog.
  • The language must provide support for variant data types. A variant is a special data type which can be used to represent multiple types of data, including integer, string, date and currency values. All of the SocketTools methods and events use variant types and the developer is responsible for converting those variants into the required data type. For example, in Visual C++, this can be accomplished using the CComVariant class.
  • The language must support passing method parameters by value and by reference. When a variable is "passed by value", a copy of its value is passed to the method and the original value remains unchanged. However, when a variable is "passed by reference", the memory address of the variable (typically called a pointer) is passed to the method, enabling the method to modify its value. In most cases, this is handled transparently by the language. Note that some languages may require that you explicitly specify that a variable will be passed by reference using a specific keyword.
  • The language must support event handlers which have variants passed by value as event parameters. If the language incorrectly assumes that all event parameters are passed by reference, this will prevent event notifications from working correctly. In general this is not an issue with any current languages, but may present a problem in older versions of a language. If you experience a problem with event handling in your language, contact the company to make sure that they are capable of correctly handling event notifications from an ActiveX component that passes parameters by value.

Microsoft Visual Basic, Visual C++ and C++ Builder are all examples of languages which can use the SocketTools ActiveX Edition. If your programming language is capable of using ActiveX controls or indicates that it supports OLE Automation, then you should be able to use SocketTools. Consult your language technical reference for additional information about how to create an instance of an ActiveX/COM object and reference its properties, methods and events.