Jump to content

ActiveX: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
Line 38: Line 38:
}}
}}
</ref>
</ref>
* Programmers can grant to ActiveX controls a much higher level of control over Windows than Java applets ever achieve, making them both more powerful and dangerous.
* Programmers can grant to ActiveX controls a much higher level of control over Windows than Java applets ever achieve, making them both more powerful but also potentially more dangerous.


[[Malware]]s, such as [[computer virus]]es and [[spyware]]s, can be accidentally installed from malicious websites using ActiveX controls ([[drive-by download]]s). Signed Java applets can also be used for such attacks, although this is rare.
[[Malware]]s, such as [[computer virus]]es and [[spyware]]s, can be accidentally installed from malicious websites using ActiveX controls ([[drive-by download]]s). Signed Java applets can also be used for such attacks, although this is rare.

Revision as of 12:07, 19 August 2009

Active X is a framework for defining reusable software components (known as controls) that perform a particular function or a set of functions in Microsoft Windows in a way that is independent of the programming language used to implement them. A software application can then be composed from one or more of these components in order to provide its functionality.[1]

It was introduced in 1996 by Microsoft as a development of its Component Object Model (COM) and Object Linking and Embedding (OLE) technologies and it is commonly used in its Windows operating system, although the technology itself is not tied to it.

Many Microsoft Windows applications — including many of those from Microsoft itself, such as Internet Explorer, Microsoft Office, Microsoft Visual Studio, and Windows Media Player — use ActiveX controls to build their feature-set and also encapsulate their own functionality as ActiveX controls which can then be embedded into other applications. Internet Explorer also allows embedding ActiveX controls onto web pages.

ActiveX controls

File:ActiveXControlVB.png
An ActiveX control being created in Visual Basic 6

ActiveX controls — small program building blocks — can serve to create distributed applications that work over the Internet through web browsers. Examples include customized applications for gathering data, viewing certain kinds of files, and displaying animation.

One can compare ActiveX controls in some sense to Java applets: programmers designed both these mechanisms so that web browsers could download and execute them. However, they also differ:

  • Java applets can run on nearly any platform, while ActiveX components officially operate only with Microsoft's Internet Explorer web browser and the Microsoft Windows operating system.[2]
  • Programmers can grant to ActiveX controls a much higher level of control over Windows than Java applets ever achieve, making them both more powerful but also potentially more dangerous.

Malwares, such as computer viruses and spywares, can be accidentally installed from malicious websites using ActiveX controls (drive-by downloads). Signed Java applets can also be used for such attacks, although this is rare.

Programmers can write ActiveX controls in any of the following languages/environments:

Common examples of ActiveX controls include command buttons, list boxes, dialog boxes, and the Internet Explorer browser.

this doesnt work.

History

Faced with the complexity of OLE 2.0 and with poor support for COM in MFC, Microsoft rationalized the specifications to make them simpler, and rebranded the technology as ActiveX in 1996.[3][4] Even after simplification, users still required controls to implement about six core interfaces. In response to this complexity, Microsoft produced wizards, ATL base classes, macros and C++ language extensions to make it simpler to write controls.

Starting with Internet Explorer 3.0 (1996), Microsoft added support to host ActiveX controls within HTML content. If the browser encountered a page specifying an ActiveX control via an OBJECT tag, it would automatically download and install the control with little or no user intervention. This made the web "richer" but provoked objections (since such controls only ran on Windows) and security risks (especially given the lack of user intervention). Microsoft subsequently introduced security measures to make browsing including ActiveX safer[5] . For example:

  • digital signing of installation packages (Cabinet files and executables)
  • controls must explicitly declare themselves safe for scripting
  • increasingly stringent default security settings
  • Internet Explorer maintains a blacklist of bad controls

Other ActiveX technologies

Microsoft has developed a large number of products and software platforms using ActiveX objects. Some remain in use as of 2009:

"Active" technologies

In the late 1990s Microsoft began multiple use of the term "Active". Despite their names, the following are not related to ActiveX:

See also

Notes

  1. ^ Introduction to ActiveX Controls at microsoft.com, accessed 18-Jan-2008
  2. ^ "ActiveX". 2009-02-24. Retrieved 2009-03-12. As a Microsoft product, ActiveX was specifically designed to work with Windows systems. ActiveX is not supported by Microsoft on other operating systems such as Mac OS X or GNU/Linux. {{cite web}}: Cite has empty unknown parameters: |month=, |dateformat=, and |coauthors= (help)
  3. ^ "Using ActiveX with LabVIEW -- Examining Mission Editor Version 1.0". NI Developer Zone. National Instruments. 2007-08-13. Retrieved 2009-03-12. The term ActiveX surfaced in the Microsoft world in early 1996. {{cite web}}: Cite has empty unknown parameters: |month=, |dateformat=, and |coauthors= (help)
  4. ^ "Microsoft Announces ActiveX Technologies: Microsoft Corp. announced ActiveX Technologies, which make it easy for the broadest range of software developers and Web designers to build dynamic content for the Internet and the PC". Microsoft PressPass. Microsoft. 1996-03-12. Retrieved 2009-03-12. San Francisco, March 12, 1996 - Microsoft Corp. today announced ActiveX ... Technologies, which make it easy for the broadest range of software developers and Web designers to build dynamic content for the Internet and the PC. ... ActiveX Technologies form a robust framework for creating interactive content using software components, scripts and existing applications. Specifically, ActiveX Technologies enable developers to build Web content easily using ActiveX Controls (formerly OLE Controls), active scripts and active documents. ... ActiveX Technologies are available in the form of the Microsoft ActiveX Development Kit, which is being distributed to more than 4,000 developers attending the Professional Developers Conference in San Francisco today. {{cite web}}: Cite has empty unknown parameters: |month=, |dateformat=, and |coauthors= (help)
  5. ^ "Activating ActiveX Controls". Activating ActiveX Controls. 1900-1-0. Retrieved 2009-6-16. {{cite web}}: Check date values in: |accessdate= and |date= (help)