ActiveX, OLE, and com/dcom

Source: Internet
Author: User
Tags ole

ActiveX: an open integration platform
Provides a quick and easy way for developers, users, and web manufacturers to create program integrations and content on the Internet and Intranet (that is, a method is provided).
With ActiveX, you can easily insert multimedia effects, interactive objects, and complex programs into your Web pages to create high-quality multimedia CD-ROMs that are quite user-friendly

Avoid the risks posed by ActiveX
ActiveX controls have strong functionality, but there are also pitfalls of being exploited, and malicious code in Web pages is often a small program written with these controls, which is run whenever a Web page is opened. So to avoid malicious web attacks only prohibit the operation of these malicious code.
IE offers a variety of options, with the following steps: "Tools" → "internet Options" → "Security" → "Custom Level", it is recommended that you disable ActiveX controls and related options.
In addition, in the security settings of IE, we can only set the Internet, Local intranet, trusted sites, restricted sites. However, Microsoft has hidden the "My Computer" security settings here, by modifying the registry to open this option, you can give us more choices when dealing with ActiveX controls, and have a greater impact on local computer security.
Here's how to do this: open "Run" from the Start menu, enter Regedit.exe in the "Run" dialog box, open the Registry Editor, and click the "" "number in the previous page to expand to: Hkey_curre-nt_user\software\microsoft \windows\currentversion\internetsettings\zones\0, find the DWORD value "flags" in the right window, the default key value is 16 binary 21 (decimal 33), double-click "Flags", In the popup dialog box, change its key value to "1" to close the Registry Editor. No need to restart the computer, re-open IE, click the "Tools →internet options → security" tab again, you will see a "My Computer" icon, where you can set its security level. Set it to a higher level of security, so that more stringent precautions.

Related technologies The more popular component models are the COM (Component object model, Object component model)/dcom (Distributed COM, distributed object Component model) and CORBA (Common object Request Broker Architecture, public object request broker architecture).
Here, there has been a topic related to this article COM, and CORBA is irrelevant to this article, not to be introduced. The reason from the difference between the components and objects, is to let everyone clear that COM and CORBA is at the bottom of the entire architecture, if temporarily not understand, may wish to continue to look down, and finally look back at the natural understanding. Now you start to explain the relationship between ActiveX, OLE, and COM.
First, let everyone have a general concept, from the perspective of time, OLE is the earliest, and then COM and ActiveX, from an architectural point of view, OLE and ActiveX are built on COM, so COM is the basis of, from the name perspective, OLE, ActiveX is a two trademark name, and COM is a purely technical term, which is why you hear more about ActiveX and OLE. Since OLE is the first to appear, from OLE, since the Windows operating system became popular, the "clipboard" (Clipboard) first solved the communication problem between different programs (the Clipboard acts as a data exchange center for copying and pasting), but the clipboard passes "dead" Data, the application developer has to write and parse the code of the data format, so the communication protocol of Dynamic Data exchange (Exchange,dde) comes into being, which allows the application to automatically get the latest data from each other, but solves the "data format" between each other. Conversion is still a heavy burden for programmers.
The creation of the object's link and embedding (Object linking and Embedded,ole) increases the data exchange of the original application to "Object Exchange", so that the program not only obtains the data but also obtains each other's application objects, and can directly use each other's data content, In fact, OLE is a composite document technology from Microsoft, and its original version was aimed only at compound documents, but in subsequent versions of OLE2, COM was imported. As a result, COM was born to the needs of OLE, so although COM is the foundation of OLE, the production of OLE is before COM.
COM's basic starting point is to have a software service for another software through a common organization. COM's first consumer is OLE2, so COM and composite documents do not have much to do with the relationship, in fact, later COM as a complex document completely unrelated technology, began to be widely used. As a result, Microsoft has started to "meddle" with common platform technologies. But COM is not a product, it requires a trademark name. At that time, Microsoft's market experts had chosen OLE as the trademark name, so the use of COM technology began to affix the OLE label. Although the vast majority of these technologies are not related to compound documents. Microsoft's approach has made it a misconception that OLE refers to compound documents only? Or does it just mean compound documents? In fact, OLE is the brand name of COM, and nature does not refer to compound documents. But Microsoft itself may not be able to explain that it takes considerable effort and time. So, with the development of the Internet, in the spring of 1996, Microsoft changed its mind and chose ActiveX as the new trademark name. ActiveX refers to a loosely defined, COM-based collection of technologies, while OLE still refers to compound documents only. Of course, the most core technology of ActiveX is COM.
The biggest difference between ActiveX and OLE is that OLE is for integration between application software and files on the desktop, while ActiveX is primarily for user interaction with further network applications.

COM makes the object model completely independent of the programming language, which is a very novel idea.
This is something we can learn from the concepts of C + + and Java objects.
But what is the so-called COM object? For the sake of understanding, COM can be thought of as a kind of (software) packaging technology, that is to think of it as a different part of the software, in accordance with a certain object-oriented form, combined into an interactive process and a set of supporting libraries.
COM objects can be written in any language, such as C + +, Java, and VB, and can be implemented in the form of DLLs or executable files that work in different processes.
A browser that uses a COM object does not need to worry about what language the object is written in, or whether it is executed in a DLL or another process. From the browser side, there is no difference. Such a common processing technique is very useful. For example, two apps that are run by the user can be implemented as interactions between COM objects (of course, the OLE compound document can do). To execute code downloaded from a Web server in a browser, the browser can think of it as a COM object, which means that COM technology is also a standard way to package downloadable code (which is what ActiveX controls do). Even methods of interacting with the native OS can be specified using COM, for example, in Windows and Windows NT, where new APIs are used, most of which are defined as COM objects.
COM, although originated from compound documents, but it can effectively apply to many software problems, it is at the bottom of the basic technology. In a word, COM is a language-independent component architecture that allows components to communicate with each other. With the development of computer network, COM further developed into a distributed Component Object model, this is the DCOM, it is similar to the CORBA Orb, this article will not do further elaboration. I believe you have a clear understanding of the relationship between ActiveX, Ole, and com/dcom through the above narrative.

ActiveX, OLE, and com/dcom

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.