LKBEN10631: Error 126 upon launching Program (xxx.dll The specified module could not be found)


Symptom

Error Message 126 program does not start. In error message mentioned dll does exist

Cause

A dynamic link library (dll) could not be loaded because of missing dependent files

Solution

After starting an application, all you get is a splashscreen and the above error message 'xxx.dll - The specified module could not be found', although the mentioned dll exists on the system (and might even be registered).
It's because not the xxx.dll is causing the problem, but other dependent modules, located in other (missing) dll's.

What to do?

1) locate the dll of the error message and compare it's parent folder with a system with an intact installation. If files are missing, copy them from the reference system. If still errors occor, you might need to register one or more of these dll's with 'regsvr32 <path\dllname

2) use some tool, there might be quite a number on the internet, the following are a few examples:
- NTFileMon (http://www.sysinternals.com/)
- Processviewer  (http://www.sysinternals.com/)
- Dependency Walker (MS Visual Studio)

If you encounter the error in more than one application, it might be a system dll missing (p.ex. %Systemroot%\System32\MSVCRT.DLL).
If nothing helps, try to reinstall the faulty application.

Disclaimer:

The information provided in this document is intended for your information only. Lubby makes no claims to the validity of this information. Use of this information is at own risk!

About the Author

Author: Wim Peeters - Keskon GmbH & Co. KG

Wim Peeters is electronics engineer with an additional master in IT and over 30 years of experience, including time spent in support, development, consulting, training and database administration. Wim has worked with SQL Server since version 6.5. He has developed in C/C++, Java and C# on Windows and Linux. He writes knowledge base articles to solve IT problems and publishes them on the Lubby Knowledge Platform.