Three Approaches to a Multiple Document Interface (MDI) Application Some programmers think that a typical MDI app containing a single MDIForm object and one or more regular forms isn't flexible enough. While it might seem logical to improve this by placing each MDI child form into individual ActiveX DLL servers, this solution doesn't work. Instead, here are three ways you can create a dynamically configured MDI application using ActiveX controls. |
Figure 1b. Desired, But Flawed, MDI Application Many Visual Basic programmers want to place the MDI child forms into individual ActiveX DLL servers. Such an architecture would offer a number of major benefits. You could update individual documents or document handlers without updating the entire application. You could modify the types of documents the main application could support by adding or removing ActiveX server DLLs from the system without modifying the main application. You could modify the types of documents available to people using the program depending on licensing, user attributes, or any other criteria. You could incrementally add new features to an application by simply shipping out a new ActiveX DLL server with support for a new document type. The major flaw of this architecture is simple: It doesn't work. |