Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Reading Dependency walker output

I am having some problems using one of the Dlls in my application and I ran dependency walker on it. i am not sure how to read it but I got following resultsenter image description here

Does it suggest any x86-x64 incompatibilty? is there anyway I can solve this issue?

Error: At least one required implicit or forwarded dependency was not found.
Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module.
Error: Modules with different CPU types were found.
Warning: At least one delay-load dependency module was not found.
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.
like image 513
Lost Avatar asked Jan 31 '14 04:01

Lost


People also ask

What are the output options in Dependency Walker?

If an output option (/od, /ot, /of, or /oc) is specified, Dependency Walker will wait until the profiling fully completes before saving the results. S ort column for m odule list view - This option controls the initial sort column that Dependency Walker will use when sorting the items in the Module List View.

What is Dependency Walker home page?

Dependency Walker (depends.exe) Home Page Dependency Walker is a free utility that scans any 32-bit or 64-bit Windows module (exe, dll, ocx, sys, etc.) and builds a hierarchical tree diagram of all dependent modules.

What can Dependency Walker logs do for You?

For each module found, it lists all the functions that are exported by that module, and which of those functions are actually being called by other modules. Logs from Dependency Walker can help people solve a few troubling problems.

What is a Dependency Walker file in Visual Studio?

Dependency Walker (or Depends, as it's listed on the Microsoft Visual Studio 6.0 Tools menu) helps you prevent the problem of the missing file. It lists every file that an application, DLL, or other executable file depends on to execute.


1 Answers

You typically see that sort of view when you look at a 32 bit executable in the 64 bit version of Dependency Walker. Because Dependency Walker is 64 bit, when it tries to look for DLLs on the DLL search path it finds the 64 bit versions. Your 32 bit program will run in the WOW64 emulator and find the 32 bit versions.

So, the screenshot that you have presented, there is nothing at all to be concerned about.

If you are having dependency problems with your app here I suggest that you run your program under Dependency Walker's Profile mode (from the Profile menu item). This will give you detailed diagnostics of what actually happens at load time and run time. The screenshot you present above is from a static analysis and by necessity such a static analysis is always incomplete and subject to inaccuracies. The only way to be sure of what happens when your program loads, is to debug it as it loads.

like image 93
David Heffernan Avatar answered Oct 15 '22 21:10

David Heffernan