Visual Basic Extension

In computer programming, a Visual Basic Extension (commonly abbreviated VBX) or custom control, was the component model used in Microsoft Visual Basic versions 1.0 to 3.0. It is still supported in the 16-bit version of version 4.0, but was made obsolete by OCXs. VBX has also been supported in the first, 16-bit version of Borland Delphi.

The VBX specification was created so that developers could extend Visual Basic. Since at the time Visual Basic was an interpreted language with limited speed, VBXs, which were most often written in C or C++, provided the ability to create very powerful and efficient user interface sub-components which could be assembled into applications using Visual Basic as the glue.

Visual Basic 4.0 added support for the newer OLE Controls or OCXs (which became ActiveX controls), implicitly deprecating VBX controls. OCXs are based on the Component Object Model.

Each version of Visual Basic has come with many controls. By incorporating VBX controls into Visual Basic, Microsoft spawned the first commercially viable market for reusable software components. Third parties have created a large market of custom controls for resale.

VBX components were called "custom controls" because the Microsoft development team envisioned them as visual "control" components like a toggle switch or button. Enterprising third party software component developers saw opportunities to use the VBX specification for non-visual components, such as components for creating ZIP files, manipulating low-level system settings and communicating with TCP/IP.