Reading Dependency walker output

23.5k views Asked by At

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.
1

There are 1 answers

2
David Heffernan On BEST ANSWER

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.