Before designing an ActiveX document, you must be aware of a few considerations.
An ActiveX document can only exist in a container. Because containers vary, you can't always predict the capabilities and limitations of your ActiveX document environment. At best, you can target a particular container or set of containers, and degrade gracefully in all others.
Global object references, however, come with some overhead: you must track them to ensure they aren't overwritten inadvertently, and you must be sure that they are released. This is covered in more detail in "Ensuring Communication Among ActiveX Documents" in this chapter.
For example, to show another ActiveX document in the Visual Basic development environment, you must use the CreateToolWindow function — which doesn't require the .vbd file. In contrast, to show a second ActiveX document in Internet Explorer, you must use the Hyperlink object's NavigateTo method with the .vbd file.