Skip to main content

'DLL Hell'

DLL HELL: Dll stands for Dynamic Link Library
Legacy software installations in the past were developed in a variety of ways. Setup developers designed their install programs to concentrate on their own products which often impacted on programs that were already installed on the PC. With legacy installations in the past, there might be two applications using the same file, but one might be designed to run on an older version. This led to "DLL hell" where the installation/uninstallation of one application would cause other applications to stop working.
In simple words : 
For instance there is an application (A) with the dll version 1.0 which is already installed on the machine, there is another application (B) with the same dll name but different version, let us take it as 2.0.
When the application B is installed on the system which has App A installed, it overwrites the dll file to version 2.0 and if the app B is uninstalled the Dll also gets uninstalled, hence failing to launch Application A as well.

This conflict between the dll file is known as DLL hell.
Merge Modules and following some component rules can help resolve DLL Hell.
Application isolation is one solution to component versioning conflicts, or DLL hell.
Isolation reduces versioning conflicts by modifying an application so it always loads the versions of components – such as DLLs – with which it was originally developed and tested. And prevents the overwriting previous versions of shared components, and ensures that other applications do not overwrite the versions of shared and support files required by your application. This is accomplished by providing DLLs and other shared components for specific applications, and placing information traditionally stored in the registry into other files that specify the locations of these isolated components. Application isolation provides increased stability and reliability for applications because they are unaffected by changes caused by installation and ongoing maintenance of other applications on the system.

The Application Isolation tool provides a quick and easy way to isolate applications with their shared .DLL or .OCX files (support files). Isolating an application with its support files ensures that your application always uses the version of shared files with which it was installed. It prevents overwriting of previous versions of shared components, and ensures that other applications do not overwrite your version of shared components.

Comments