The Internet Server ActiveX control provides a simplified
interface for creating event-driven, multithreaded server
applications using the TCP/IP protocol. The control interface is
similar to the SocketWrench ActiveX control, however it is designed
specifically to make it easier to implement a server application
without requiring the need to manage multiple socket controls. In
addition, the Internet Server control supports secure communications
using the Transport Layer Security (TLS) protocol.
Each instance of the Internet Server control represents a server,
and each active client connection is managed internally and
referenced by an integer value which uniquely identifies the client
session. All interaction with the server and the clients connected to
it uses an event-driven model, with the program written to respond to
events such as OnConnect, OnRead and OnWrite.
Developers who have used the SocketWrench ActiveX control will
find the Internet Server control has a familiar interface, with a
subset of properties and methods that are specific to creating a
server application. Each of the network events have an extra
parameter which specifies the socket handle which should be used when
communicating with the client. This enables the application to
communicate with multiple clients without having to create multiple
socket objects or use a control array.
The SocketTools ActiveX Edition components are self-registering
controls that are compatible with any programming language that
supports the Component Object Model (COM) and the ActiveX control
specification. If you are using Visual Basic 6.0, Service Pack 6 (SP6)
is required. We recommend installing all available updates for your
development tools. Although the Visual Basic 6.0 runtime is supported
on Windows 11, the IDE itself is no longer officially supported by
Microsoft. Legacy IDEs and compilers may also require elevated
(administrator) privileges to run properly.
The ActiveX controls are supported on Windows 7, Windows Server
2008 R2, and later versions of both desktop and server editions of
Windows. For Windows 7, Service Pack 1 (SP1) is the minimum
requirement. For Windows 8 systems, the 8.1 update must be installed.
On ARM-based platforms, the minimum supported version is Windows 10
build 1709.
SocketTools includes components for both 32-bit (x86) and 64-bit
(x64) Windows platforms. All modern versions of Windows are 64-bit,
but we continue to include 32-bit components for compatibility with
legacy development tools such as Visual Basic 6.0. We also provide
native ARM64 ActiveX controls for systems running Windows on ARM. Note
that 32-bit applications on ARM run using x86 emulation, and Microsoft
no longer supports native ARM32 applications.
If you are using VBScript, Visual Basic for Applications (VBA), or
another scripting environment on an ARM-based system, be aware that
64-bit hosts will require ARM64 components, while 32-bit hosts will
use x86 components under emulation. This includes applications created
with Visual Basic 6.0. To reduce deployment complexity and avoid
confusion, SocketTools does not include ARM32 ActiveX controls in its
standard redistribution packages but they are available on request for
legacy or specialized scenarios.
When you distribute an application that uses this control, you can
either install the file in the same folder as your application
executable or as a shared component in the appropriate system folder.
If you install the control in the system folder, it is important that
you distribute the correct version for the target platform and it
must be registered. If you install the control in the same folder as
your executable, it is recommended that you use registration-free
activation or COM redirection to ensure that the correct version of
the control is loaded by the application.