Microsoft first introduced the term ActiveX in 1996 when they launched a downloadable user interface control or software component that could be used by Internet Explorer to give more interactive or active content on a Web page to the reader. ActiveX controls were a re-branded subset of OLE custom controls (OCX) or OLE controls (OCXes) that were streamlined for downloading over the Internet and that could be digitally signed for security and authentication reasons. These ActiveX downloads were also tagged or marked as being safe for scripting and safe for initialization, to help give users confidence in using them in ActiveX Internet apps, as they were less likely to start making unauthorized actions on their systems. ActiveX controls also supported threading models, such as Apartment Model Threading, to try and improve performance in a multi-user or multi-process environment.
OLE controls (OCX's) or Object Linking and Embedding controls were themselves the successor to VBX controls first introduced by Microsoft to help programmers extend the functionality and features of their Visual Basic program by buying and reusing a VBX control built by another programmer or company, with expertise in a specific area. VBXes were limited to 16 bit usage for example on Windows 3.x, OCXes were available for both 16 bit or 32 bit architectures and began being widely used as people adopted Windows 95, although most people tended to use VBXes on 16-bit systems and OCX controls or OLE components on 32-bit systems for performance reasons. OLE itself was based on earlier work by Microsoft in their Office products to allow data to be exchanged and reused as objects inside other documents or files, such as embedding an Excel spreadsheet in a Word document and updating the content of that Excel spreadsheet for display using Dynamic Data Exchange (DDE). Hence the term OLE document, that is still in use today.
OLE was part of the Microsoft COM or Component Object Model, that enabled programmers to reuse software components and services in a logical and object oriented manner. COM was extended and expanded over the years to include DCOM, the Distributed Component Object Model that allowed programmers to call OLE objects or COM objects situated on other computers or servers. COM+ was added to support transaction services using technologies such as Microsoft Transaction Server (MTS) and this first appeared when Windows 2000 was launched to better support distributed transactions in more complex applications, where higher performance and throughput was required. COM has gradually become a common term used to refer to: COM, DCOM, COM+, OLE and ActiveX technologies in general.
ActiveX components can be created in a variety of object oriented programming languages, but are most commonly created using C++ and the Microsoft Foundation Class (MFC), such as: MFC 4.0, MFC 4.2 and MFC 6.0. When VB 5 was released in became possible for a Visual Basic programmer to create an ActiveX component for reuse by other people and whilst most programmers claim that the best ActiveX components were written in Visual C++ or by utilizing the ActiveX Template Library, it did not stop some entrepreneurial developers from Janus Systems writing one of the bestselling ActiveX UI controls of all time in VB5 and VB6, called Janus GridEx, a VB6 ActiveX, that gives the look and feel of the Microsoft Outlook UI inside your app.
ActiveX components and ActiveX controls come with a variety of file extensions such as: .exe, .dll and .ocx and these denote a certain type of usage either in-process as part of your program or app (an ActiveX DLL), or out-of-process as a standalone executable (an ActiveX Exe), as an ActiveX control or OCX control mainly used as a UI control on a form or page. Downloadable ActiveX controls are also packaged as .cab files or Cabinet files. These CAB files are packages of files compressed to take up less space and hence can be downloaded more efficiently over the Internet.
In this ActiveX Component gallery you will find a variety of commercial products that are ActiveX objects or ActiveX controls that people sometime refer to as VB controls or as a VB object, as they are often used within Visual Basic. You will find ActiveX Windows components that allow you to carry out visuals tasks, such as an ActiveX UI control for displaying video or images, an ActiveX image control or a non-Visual ActiveX upload component that will allow you to push a file up onto a server over the Internet using HTTP or FTP protocols.
The Microsoft software platform provides Microsoft developers with an array of Microsoft tools to create solutions for their customers and end users. The Microsoft applications that programmers develop can be created using the MS Visual Studio range of Microsoft development tools, including: MS Visual Basic; MS Visual C# (C-sharp); MS Visual C++ (C Plus Plus), as well as older MS dev languages and MS IDEs, such as MS Visual FoxPro. MS Visual Studio, the Microsoft .NET Framework and the more mature Microsoft COM platform can be extended to provide additional functionality to help MS developers create solutions faster. For example, there is a Microsoft add-in model that allows a Microsoft tool to be extended by other third-party companies, as long as they comply with the Microsoft addin model. As a result you can get a Microsoft extension for Visual Studio to refactor your Visual Basic code to make it easier to read or maintain and to speed up your coding by helping with code layout. Many Visual Studio add-ins are available, including add ins to do C# code generation for you, giving you a faster way to create an application from scratch.
Microsoft Visual Studio software can also be extended beyond the Microsoft controls and Microsoft components that are supplied within the Visual Studio Integrated Development Environment (VS IDE) to give additional functionality. You can get Microsoft .NET components from companies that specialize in writing Internet communications components or eCommerce components that can be programmed like any other Microsoft component and save you a vast amount of time and money in programming your next Microsoft project. Or you can get an advanced Microsoft control for charting that enables you to draw many more styles of charts and graphs than are available inside the standard Microsoft controls in Visual Studio. These Microsoft components are available in many different forms as: Microsoft DLLs or as a Microsoft library, or as a Microsoft ActiveX or COM component supporting the COM object model or for the .NET Framework as Microsoft WinForms controls or ASP.NET controls, or as Microsoft WPF controls for Windows Presentation Foundation applications or as Silverlight controls for Microsoft Silverlight developers to use.
In this Microsoft marketplace you will find lots of different MS UI controls, as well as non-visual components, Microsoft utilities and Microsoft plug-ins to help you program in Microsoft Visual Basic, Visual C++ & Visual C#. You will also find Microsoft visual tools written by ISVs that can be used by MS Access developers or by MS Office programmers as Office components to be embedded inside their MS VBA or VSTO apps. There are also SharePoint tools and SharePoint Web Parts for MOSS bases apps being created by SharePoint developers. Plus for SQL Server you will find Microsoft utility products that allow you to access or bind to your data sources, compare data, manage your data, backup your data efficiently and much more. There are over 1,800 commercial products compatible with Microsoft software shown here in this Microsoft product gallery and many come with free downloads or free software trials for you to use listed in our Microsoft downloads product pages.
for Scanning and OCR / ActiveX / COM / Microsoft