DLL Hell - A Article About DLL Hell

What's DLL Hell?

Well DLL Hell put simply is when your dll files or "dynamic link library files" are screwed up. There are multiple other answers as to what DLL Hell is such as; 1.Loading or exiting one application breaks another application. 2.When dll files are not backwards compatible. 3.When DLL files are unregistered or removed due to uninstalling.

Below we've displayed the various examples and each one links to the solution or fix for that particular issue. Note these are meant to be used by the end user and not the programmer. If you are a programmer I can only suggest that you write your program relying on the latest DLL files, so you can prevent your users from going through dll hell.

DLL Hell Related Issues

Loading or exiting one application breaks another application. -DLL Hell

When loading or exiting one application causes another app to "freak out" or throw up an error, you may have a compatibility issue. Microsoft has promised to fix this issue, but until then you may need to figure out which application is more important. The application you need should be re-installed after you uninstall the application you don't need. Or try to get the latest version or updated version of each application. This dll hell issue is not easy to resolve, and may take time. This is why it may be easier to just remove one application.

Dll files are not backwards compatible. -DLL Hell

This DLL Hell error s pretty much self explanatory. Not being backwards compatible means that the new dll file may be missing some functions that older applications relied on. A fake example of this would be a dll file we'll call somecrazy.dll. This dll is used by solitaire (not really just an example), and is called when loading solitaire to bring up previous scores. Well you install a pinball game that also uses somecrazy.dll, and installs a newer version of the file so that it can run. During the installation you get a message similar to "The file somecrazy.dll currently exist would you like to replace it?" You opt to replace the dll file. Now the newest version of somecrazy.dll does not have that old function that loads the score from solitaire, so every time solitaire opens it throws up and error. This is an example of dll hell backward compatibility issues. The resolution for this again would be to either find a newer version of solitaire that can use the new dll, or to uninstall the pinball game and reinstall the original version of solitaire. This gets complicated, and may take some time to resolve. This is why it's called DLL Hell.

DLL files are unregistered or removed due to uninstalling. -DLL Hell

This dll hell issue is probably the most common. This is caused when you uninstall an application and it removes a shared dll file resource. You will usually see an error similar to the below alert box.

DLL Hell Uninstall Error

The resolution for this one is simple; reinstall the application just uninstalled or find the missing dll and replace and re-register it. The first option is probably the easiest one.