LlmClient ActiveX Control  
 

The LlmClient ActiveX control provides a simple, high-level interface for integrating large language model (LLM) capabilities into Windows applications. The control is designed for developers using COM-compatible development tools such as Visual Basic 6.0, VBA, Delphi, PowerBuilder, and scripting environments that support ActiveX automation.

The control enables developers to quickly add AI-powered functionality to existing applications without needing to directly work with REST APIs, JSON payloads, HTTP requests, or provider-specific implementation details. Using familiar COM properties, methods, and events, applications can send prompts, receive responses, manage conversation history, and interact with modern AI services using a traditional Windows programming model.

Reference

Control Information

File Name CSLLMX12.OCX
Version 12.0.3024.1286
ProgID SocketTools.LlmClient.12
ClassID 79FA9AF1-C367-4F24-9E8A-1886AC2581E1
Threading Model Apartment
Help File CST12CTL.CHM
Dependencies None

Overview

The LlmClient ActiveX control is built around a session-based architecture that manages all aspects of interacting with a language model, including connection settings, provider configuration, conversation history, and model selection. It automatically maintains conversational state between requests, making it easier to create interactive applications without manually tracking prior prompts or responses. By providing a consistent interface across multiple AI providers and models, it allows applications to switch between services with minimal code changes. Developers can enumerate providers and models, query supported capabilities, configure default behavior, and adjust settings such as token limits, reasoning levels, and generation parameters at runtime.

A primary goal of the control is to simplify the integration of AI features into both modern and legacy Windows applications. Developers can work with large language models using familiar COM automation techniques while the control internally handles low-level details such as HTTPS connections, request formatting, JSON serialization, authentication, and response parsing. This allows applications to communicate with AI services using a familiar programming model that is consistent with traditional ActiveX and COM development.

The control can be added to a form at design time or created dynamically at runtime using standard COM automation techniques. This makes it suitable for desktop applications, scripting environments, Microsoft Office automation, and other solutions that rely on COM-compatible components.

The control also includes comprehensive support for managing conversation history and session state. Applications can enumerate previous messages and responses, search message history, import or export conversation data, and automatically limit retained context to help manage token usage and provider limitations.

In addition to messaging functionality, the control includes utility features for estimating and tracking token usage, validating prompts and model names, managing cached provider information, and logging diagnostic information for debugging purposes. These capabilities help developers better understand how their applications interact with AI services and assist in identifying configuration or performance issues.

The LlmClient control makes it practical to add AI-powered features such as chat assistants, automated responses, content generation, text analysis, and workflow automation to existing Windows applications while preserving compatibility with your current development tools.

Requirements

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.

Distribution

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.