54

I tried to open kernel32.dll using Dependency Walker on Windows 10. I got the following error and warning:

Error: At least one required implicit or forwarded dependency was not found

Warning: At least one delay-load dependency module was not found.

Screenshot: Error reading dependency

I'm running Windows 10 32-bit, and the Dependency Walker is also 32-bit. Also, I'm running Dependency Walker as admin.

Pang
  • 9,564
  • 146
  • 81
  • 122
Ash
  • 541
  • 1
  • 4
  • 4
  • 2
    If it's any consolation, you're not alone in seeing this error. I get it too. I think it's not a problem as it is caused by a delay-load mechanism which Dependency Walker can't detect. See http://www.dependencywalker.com/faq.html – Klitos Kyriacou Nov 09 '15 at 19:41
  • @Ash Which version of Dependency Walker are you using? See http://stackoverflow.com/a/36049618/234976 – Sam Mar 17 '16 at 20:50
  • 1
    Possible duplicate of [Dependency Walker: missing dlls](http://stackoverflow.com/questions/36240215/dependency-walker-missing-dlls) – Ofek Shilon Mar 28 '16 at 07:51

2 Answers2

78

This has nothing to do with delay loads. These are MS API-sets - essentially, an extra level of call indirection introduced gradually since windows 7. Dependency walker development seemingly halted long before that, and it can't handle API sets properly.

So these are all false negatives and nothing to worry about. You're not missing anything.

Here it is in more words.


Edit: Only in Oct 2017 did someone finally try to fill this gap. Meet Dependencies by lucasg. I've only briefly fiddled with it until now, but it handles API sets well and is at least very worthy of attention.

Ofek Shilon
  • 14,734
  • 5
  • 67
  • 101
  • 3
    Thanks for the tip! I just moved to windows 10 and Dependencies is working while depends is taking forever. – Phil Jan 17 '18 at 19:32
  • 1
    This helped me. I had a complex dependency failure that I'd already spent hours trying to resolve using Depends. Dependencies spotted the problem instantly. Much appreciated. – Neutrino Feb 19 '18 at 14:15
  • Do you know if by now there is some similar program available which works on Windows 10? – Aziuth Sep 03 '19 at 12:33
  • @Aziuth I didn't experience any problems with it on windows 10. – Ofek Shilon Sep 04 '19 at 14:57
  • I tried to use dependencies by lucasg... it didn't launch, apparently due to it's own dependency issues. – Jeff H Oct 05 '21 at 18:27
  • @JeffH try ProcMon to see what is missing – Ofek Shilon Oct 05 '21 at 18:50
  • Thanks, Ofek! I did download procmon, but couldn't figure out how to use it for this purpose. – Jeff H Oct 06 '21 at 19:28
  • @JeffH filter to process name=dependencies.exe, observe file activity before process shutdown. You should be able to quickly see something like a DLL sought after in many locations (the entire PATH) before failing and exiting. Maybe it's a mismatch in .net version? – Ofek Shilon Oct 08 '21 at 11:41
  • @JeffH so what was it? – Ofek Shilon Oct 09 '21 at 21:04
  • Ofek - can't really tell from the filtered output. It even complains on a machine that the installed app does run on. – Jeff H Oct 10 '21 at 22:06
  • Ofek - I found this tool, ".NET Dependency Walker" that is much more clear about things: https://www.workshell.co.uk/products/netdepends/ – Jeff H Oct 11 '21 at 02:57
  • Yes, .net has a different tool ecosystem. The parallel to Process-Monitor is probably Fusion log (see assembly load during runtime) – Ofek Shilon Oct 11 '21 at 10:04
18

There's a reimplementation of dependency walker that is meant to implement for the later features of the dll mechanisms. Have a look at

https://github.com/lucasg/Dependencies

Johan Lundberg
  • 26,184
  • 12
  • 71
  • 97
  • 3
    sadly that is a rather feature incomplete replacement with no life profiling support that vastly limits its usability – vlad_tepesch May 23 '19 at 09:21
  • I tried dependcy to spot an issue with one of our DLL and it did not spot it. I had to resort to procmon to find the missing DLL. Sad that we do not have a proper replacement of Dependecy Walker. – Emmanuel Buu Oct 30 '19 at 15:24
  • This answer doesn't bring anything new (compared to @OfekShilon's),. – CristiFati Jul 30 '21 at 01:03
  • Are there more alternatives? Preferably without dependency on `.net`? – Royi Sep 22 '21 at 13:50