The ActiveX Controls Framework is a sample code base from which you can author ActiveX controls for use in existing containers, such as Microsoft Visual Basic, Microsoft Access, and Microsoft Visual FoxPro®, or in future containers of ActiveX controls. This framework is not supported by the Microsoft Corporation; it is provided “as is” because it may be useful.
It differs from the Microsoft Foundation Class Control Developer’s Kit in many ways. Most notably, this framework is considerably more “bare bones.” Only minimal functionality is provided to the programmer. Little in the way of default handlers for various Windows messages or OLE events has been provided. The ability to add them is there, but the code is not. The code base has been designed primarily for performance and reduced code size as much as possible. Whenever there is a choice between ease of use and performance, the latter is typically chosen.
In addition, the code is designed to take advantage of whatever ActiveX features are available from the host. The code uses any available features and falls back to the older ActiveX behavior for those cases where they are unavailable.
The code base is extremely extensible and all the source code is there: You can make it do anything you want.
Note The Active Template Library (ATL) was created to provide developers with a convenient mechanism for building lightweight and fast Component Object Model (COM) objects. COM is the technical underpinning of all Microsoft ActiveX technologies. ATL 2.0 has been extended to support the creation of ActiveX controls, allowing you to write the most efficient COM components in C++. ATL is Microsoft’s recommended framework for building fast, small COM objects. See the Visual C++ ATL documentation for more information. As well, the OLE DB Template Classes in Visual C++ provide an alternate set of wrapper classes.