Earlier conflicts with Windows DLLs when the wrong one was installed. DLLs are extensions to Windows that are shared with any application that requires them. Once a DLL is opened, all applications use that single instance. Microsoft always adds features to its DLLs, and in order for an application vendor to ensure that the latest DLL is available, it may install the latest DLL along with its application.
Installation Programs Must Be Smart
If an installation program checks version numbers and never replaces a newer DLL with an older one, there is usually no problem. However, if it replaces a more recent DLL with an older one, other applications that depended on the newer DLL may no longer work.
Improvements Were Made
When the DLL concept was developed, computers had little more than 4MB of RAM, and having two instances of the same DLL open at the same time was wasteful of precious memory. However, starting with Windows 2000 and XP, developers could install DLLs in their own application folders, mark them as "not" shared and use them exclusively. In addition, newer Windows versions ensure that shared DLLs are not replaced with older ones. See DLL