Made with
ConceptDraw
DIAGRAM 18

COM and OLE Diagram

OLE is an acronym for Object Linking and Embedding which is known to be simply a proprietary technology that was developed by “Microsoft Corporation” allowing both linking and embedding to all documents as well as many other objects, which are known to be implemented on top of the so called “Component Object Model” as well as OLE containers.

The mentioned objects can always implement the interfaces to export their functionality. There’s only interface that is compulsory — the “OleObject” one, when all other interfaces may also need to be implemented in case the functionality exported by such interfaces is required at all.

Some of the terminology may have to be explained for the purpose of easing the understanding of what follows. The “view status” of any object means the status clarifying if this object is transparent or opaque. It also may help to represent if it supports any drawing with a definite aspect. The site of an object is a representing an object the location of the object in its container that supports a site object for every single object that is contained.

“DataObject” is known to be one of the main objects within the Object Linking and Embedding processes. After its implementation, it enables data’s transfer as well as notifies about any changes made in data. DataObject must be implemented by those objects that are there to support the “drag-and-drop”, that are pasted from or copied to the clipboard. The last mentioned objects are known to be embedded or linked in a containing document, while another object named the “ObjectWithSite” allows the caller to inform the “OLE object” of its site. The very same functionality can be also provided by another object — “OleObject”.

“OleCache” object allows different visual presentations from a so called “DataObject” to be cached, allowing an embedded object for store its representation, the visual one. It can be done by enabling it to be displayed without needing of starting the application which was previously used for creating the object. At the same time a later version of previously mentioned object — OleCache2 — provides more fine-grained control over the process of caching.

“OleCacheControl” is an interface not called by the container, but by the object for allowing it to receive the needed notifications of when its other object — a “DataObject” one is running, allowing it to subscribe to the different notifications of the data changes of that object. In the described way it allows to update the cached presentation in a proper way.

The “OleDocument” object allows the Object Linking and Embedding object to support many different views of its data and a few related functions, while an “OleDocumentView” is a document object implementing this interface for every view and so allowing the caller to set the site of the query, object as well as to set the size of that particular object, showing and activating it and some of the related functions. “OleInPlaceActiveObject” was called by the outermost container of an object for interacting with it while it's active. For example, there’s a need of processing the so called “accelerator keys” in the container's message queue which are meant for the contained object.

Another object used within the Object Linking and Embedding processes is a windowless one named as a “IOleInPlaceObjectWindowless” one. It is an object which does not have its own window. Instead, it is displayed in its own container's window, being used by the container for relaying all the messages received by the “container's window”. All the mentioned messages are known to be intended for the contained object. “OleLink” allows any object to support the linking and “OleObject” is arguably the most important interface for any other object within the Object Linking and Embedding activities.

At the same time, another сonstituent of the Object Linking and Embedding process is a “ViewObject”. It allows any object to draw itself directly. Thus, there’s no more need left to passs a “DataObject” to the container. For all the objects supporting both DataObject and DataObject interface, the underlying implementation is known to be usually shared. “ViewObject2” allows the caller to query the size of the object and “ViewObjectEx” adds the needed support for any flicker-free drawing of the transparent objects.

There are many other objects which are used within the processes of Object Linking and Embedding and those who know enough to be able to create their own Object Linking and Embedding diagram must know all of them, although to be able to make such diagram quick and so to spend your time more efficiently, you can always use simply a professional software that was developed especially for such purposes — to make it much simpler to create any needed diagram, including the OLE one. This software is a ConceptDraw DIAGRAM diagramming and drawing one available for being downloaded from this site as well as another application as an extension to the mentioned one — ConceptDraw STORE. Getting ConceptDraw STORE means ensuring yourself in making it possible to draw any OLE diagram within only a few hours or even minutes, depending how good (familiar) you are with the mentioned tools already.

You can also, apart from making any OLE diagram, create a COM one using the solution from ConceptDraw STORE named as a “Software Engineering” one. Having all fifteen design symbols of both the COM and the OLE objects from the mentioned solution will enable you to create any needed Object Linking and Embedding diagram as well as any needed COM diagram, including the conceptual diagram of COM aggregation presented on this page as an example of what it is possible to make in ConceptDraw DIAGRAM software.

COM and OLE Diagram

Example 1. Command OLE Aggregation Diagram (COM OLE)

The example above shows a conceptual diagram of COM aggregation. "The outer object exports an interface of the inner object called IInner, and an interface of its own, called IOuter, but it doesn't export IPrivate. The little interfaces on the top right of the objects represent the IUnknown interfaces of the objects. Since calling IUnknown methods on any interface of the inner object returns either an interface of the outer object, or an interface whose IUnknown methods call the IUnknown methods of the outer object, the outer object is the only object that has access to the IUnknown interface of the inner object."
[Unified Modeling Language. Wikimedia.Commons]

ConceptDraw DIAGRAM is a perfect tool for:








TEN RELATED HOW TO's:
Have you ever needed a flowchart, but did not have the time or tools to build one? Rapid Draw allows you to build a professional flowchart quickly and easily. You have the ability to add your own shapes to Rapid Draw’s built in shape library.How To Create a FlowChart using ConceptDraw *
Picture: How To Create a FlowChart using ConceptDraw
Related Solution:
Public catering business will always be in demand.To attract a lot of clients, it’s important to have a detailed banquet hall plan, a diverse menu and reasonable prices. If you want to create a good plan, you can use drawing software. When planning and considering the layout of a banquet hall, one must take into consideration, that it is very significant to make it stylish with correctly selected appointment and celebratory belongings. Tables and seating must be handily arranged. The furniture arrangement can changes depending on client requirements, kind of banquet and amount of guests. ConceptDraw Cafe and Restaurant Plans solution supplies a dozens of predesigned vector graphic objects of banquet furniture and accessories. Thus you can design the Banquet Hall layout for the celebrations in any style and any number of guests.Banquet Hall Plan Software
Picture: Banquet Hall Plan Software
Related Solution:
ConceptDraw DIAGRAM diagramming and vector drawing software offers the Fault Tree Analysis Diagrams Solution from the Industrial Engineering Area of ConceptDraw Solution Park for quick and easy creating the Fault Tree Diagram of any degree of detailing.Fault Tree Diagram *
Picture: Fault Tree Diagram
Related Solution:
While developing software, it is very important to have a visual model, because it helps to represent the logic and the architecture of an application. Experienced engineers use UML diagrams to denote relationships between classes and their instances. UML is a general language for a set of diagrams like deployment diagrams, object diagrams or use case diagrams. This diagram represents UML class diagram used for a software system development using an object-oriented method. Class diagrams are categorized as static structure diagrams that depict the physical structure of a system. Class diagram divides a software system's structure into "classes". Classes are defined by the methods and variables of objects. UML Class diagram is used to depict relationships and source code dependencies between objects.UML Diagram *
Picture: UML Diagram
Related Solution:
The UML Diagrams are widely used by software developers and software engineers. They can draw the UML Diagrams manually on the paper, but it is incredibly convenient to use the special UML diagramming software. The UML diagramming software allows you to draw the UML Diagrams in a few minutes.UML Diagramming Software *
Picture: UML Diagramming Software
Related Solution:
The vector stencils library Activity diagrams from the solution Rapid UML contains specific data modeling symbols for ConceptDraw DIAGRAM software.Data Modeling  Diagram
Picture: Data Modeling Diagram
Use Case Diagrams describes the functionality provided by a system in terms of actors, their goals represented as use cases, and any dependencies among those use cases.Diagramming Software for Design UML Use Case Diagrams *
Picture: Diagramming Software for Design UML Use Case Diagrams
As restaurant industry is growing rapidly nowadays, researches show that almost half of the adults have worked in a restaurant or a cafe. Moreover, many of them dream to start their own someday. Unfortunately, it takes a lot of time to write a business plan and to find a great location, although some know how to create a restaurant floor plan in minutes or how to plan budget effortlessly. Hiring employees can also cause a lot of headache, but this is crucial for further success, because every guest comes to restaurant for a good service and delicious food. It is also worth noting that restaurant concept is also important, because it defines target audience and influences the menu. This diagram represents the floor plan of an ongoing sports-theme establishment - restaurant, cafe, or other food service. A number of widescreen monitors installed along the perimeter provide visitors the opportunity to follow the course of a match from anywhere in the dining room of restaurant or cafe. The most of sports fans believe that food and alcohol is a big part of any sports show. That is why the dining room takes the most space - almost 60% of the total establishment space. Nearly all sports fans consume beverages while watching sports - beer, soda or water at least. Thus, the restaurant floor plan designers added a large lavatory there. Moreover, project developers considered unnecessary the gender division of such delicate place - perhaps they guess that only men are watching football, or believe that alcohol will eliminate the most of gender differences.Restaurant Floor Plan
Picture: How To Create Restaurant Floor Plan in Minutes
Related Solution:
Data storage in clouds is very popular and widely used in the modern world. The Amazon is one of the companies which provide this service. Amazon Web Services offers the inexpensive and reliable cloud computing services, that's why many large companies prefer the Amazon Cloud for storage and operating their data. It is convenient to draw various AWS diagrams explaining the use of amazon cloud with help of tools of AWS Architecture Diagrams Solution from the Computer and Networks Area of ConceptDraw Solution Park.Amazon Cloud *
Picture: Amazon Cloud
Related Solution:
ConceptDraw DIAGRAM is a powerful diagramming and vector drawing software. Extended with AWS Architecture Diagrams Solution from the Computer and Networks Area, ConceptDraw DIAGRAM now is ideal software for Amazon Web Services diagrams drawing.Amazon Web Services *
Picture: Amazon Web Services
Related Solution:
ConceptDraw
DIAGRAM 18