5 Tools to Check Dependency Files Needed by Application

You might have noticed that some programs require certain .DLL or .OCX files in order to run. Similarly to programs that are created and compiled using Microsoft Visual C#, the program would require .NET framework to be installed on the target computer to run. Another example would be a program created using Visual Basic 6 would probably require MSVBVM60.dll to be present in either the system32 or the program’s folder. At least Microsoft has made an effort to ensure that VB6 applications can be executed on newer Windows operating system including Windows 10.

When a required .DLL is not found in either the program’s or system32 folder, you will get a system error window saying “The program can’t start because XXXXX.dll is missing from your computer. Try reinstalling the program to fix the problem” when attempting to run the program.

The program can't start because DLL is missing from your computer

Solving the above problem is as easy as searching for the required .DLL or .OCX file on the Internet and placing it in the program’s folder. If you need to re-distribute a program without getting the error above, you must first know what are the dependencies of the software. Fortunately there are third party software that can scan and tell you the program’s dependencies. Here’s 5 of them. 1. Dependency Walker

dependancy walker

Dependency Walker is a free and portable tool that can analyze any Windows module such as EXE, DLL, OCX, SYS and tell you the file’s dependencies. Simply run the program, click on File > Open and select the file that you want to check. A hierarchical tree diagram will be displayed on the program. A powerful feature found on Dependency Walker is the ability to detect all kinds of dependencies including the dynamic loading, delay loaded, injected and etc.

Download Dependency Walker


2. PeStudio

pestudio imported libraries

PeStudio is actually a tool meant to analyze executable files to detect any anomalies without even running it on the computer. It can tell you a lot of information about the loaded executable file such as the programming language used to code the program, Virustotal scan result, MD5/SHA1 hash, architecture (32-bit or 64-bit), certificates, resources, strings, and many more. To see the dependencies, simply look at the Imported Libraries from the hierarchical tree and it shows the different types of dependencies such as implicit, delay-loaded and etc.

Download PeStudio


3. MiTeC EXE Explorer

mitec exe explorer

An advantage in MiTeC EXE Explorer is the ability to support many different types of files such as executables, DLLs, activeX, drivers, codecs, VxD, fonts, screensavers, borland packages and even control panel applets! To check for a file’s dependency, first load it into the program and check the Imports tab. A report can be saved as a text file from the file menu.

Download MiTeC EXE Explorer


4. CFF Explorer

cff explorer

Although there is a newer version called PE Insider that is created by the same author of CFF Explorer, we still prefer the older version because the features are more complete while the newer PE Insider is a very basic viewer. Other than the built-in dependency walker, CFF Explorer also comes with a hex editor, an identifier to check the programming language used for the loaded file, quick disassembler, resource editor and even an UPX compressor.

Download CFF Explorer


5. AdmiralDebilitate

admiraldebilitate

Although many PE editors or readers claim to support .NET applications, AdmiralDebilitate is probably the only one that can truly show the dependencies of a .NET application. It also tells you the required .NET framework version at the Assembly Details window. Do note that the program itself requires .NET Framework 3.5 to run which is not included in Windows 8.1 by default. Although the official website of AdmiralDebilitate is no longer accessible, thankfully you can still find the source code and program hosted at Collaborative RCE Tool Library.

Download AdmiralDebilitate


Additional Tip: If you want to re-distribute an executable file together with the dependencies and making sure that they can be run on most Windows operating systems, it is not necessary to include all the detected dependencies shown by the tools mentioned above. Most of the time you will just need to include only the DLL files that are not found in a fresh Windows operating system. Nirsoft has created 3 informational sites containing a standard default list of DLL files located in the system32 directory of Windows XP, 7 and 8.

10 Comments - Write a Comment

  1. Toah 8 years ago
  2. SUNKUMARSPACE 8 years ago
  3. Masoud123 8 years ago
  4. Dinesh Verma 8 years ago
  5. payen 8 years ago
  6. AtOdds 8 years ago
  7. roy raay 8 years ago
  8. Raitokun 8 years ago
  9. ha14 8 years ago
  10. mafia87 8 years ago

Leave a Reply

Your email address will not be published. Required fields are marked *

Note: Your comment is subject to approval. Read our Terms of Use. If you are seeking additional information on this article, please ask in our forum or contact us directly.