Although dynamic-link libraries are central to the architecture of Windows, they are not necessary components of most Windows applications. Your application does not have to use a dynamic-link library simply to maximize memory management in Windows. If you split your application into multiple code segments, Windows provides a type of dynamic linking between code segments that allows for optimal memory usage. For more information about using multiple code segments, see Chapter 16, “More Memory Management.”
Among other purposes, however, dynamic-link libraries are useful for the following tasks:
Sharing code and resources among applications
Easily customizing your application for different markets
Filtering messages on a systemwide basis
Creating device drivers
Allowing Microsoft Dialog Editor (DLGEDIT.EXE) to support your custom-designed controls
Facilitating the development of a complex application