| Home | Previous Lesson: What is Linking and Embedding? Next Lesson: Model |
There are several things to consider when deciding between linking or embedding an object:
| Will anyone else have access to data contained in objects outside of your application? | |
| Is the data contained in your objects of a static nature? | |
| Is the size of your application important? | |
| Is there a chance of someone moving files containing objects? | |
| Is speed important? |
The following table highlights some of the differences between linking and embedding when considering these questions:
Linking |
Embedding |
If objects are changed outside your application, then the object in your application will be updated automatically. |
An embedded object can only be edited from within your application. |
Using linked objects will keep the size of your application down, as the objects are not stored within your application. |
Embedded objects are stored within your application, so the file size is bigger. |
When you use linked objects, your application contains the reference to the linked file, so if the file is moved, the link will be severed. |
This isn't a problem with embedded objects. |
Linked objects are only loaded into your application when they are required, so start-up speed should be quicker. However, working with a linked object reduces the speed of your application, because the container has to link to the file. |
Start-up speed will be slower because the file is bigger, but work with the embedded objects is quicker because the object already exists in your application. |
Linked objects can't be activated in-place, for editing. Only off-site activation is allowed. |
In-Place and Off-site activation is allowed. |
Component Object Model versus the Traditional Large EXE
| Home | Previous Lesson: What is Linking and Embedding? Next Lesson: Model |