84
votes

I have been trying to resolve .dll dependencies for the executable file with Dependency Walker. Currently, I am getting missing .dlls in the following form:

API-MS-WIN-XXX

EXT-MS-WIN-XXX

For example:

API-MS-WIN-APPMODEL-IDENTITY-L1-2-0.DLL
API-MS-WIN-APPMODEL-RUNTIME-INTERNAL-L1-1-0.DLL
API-MS-WIN-BASE-UTIL-L1-1-0.DLL
API-MS-WIN-CORE-APIQUERY-L1-1-0.DLL
EXT-MS-WIN-RTCORE-NTUSER-SYSCOLORS-L1-1-0.DLL

Does anybody have any ideas on how to resolve these? Any help will be greatly appreciated!

Additional info: I compiled the executable using Visual Studio 2013. The most interesting thing is that I did not receive any errors during compilation. However, I cannot run it due to missing dependencies. I also attached a screenshot of dependency walker:

dependency walker

Update 1: As an attempt to solve the problem I tried to add the path for the libraries that VS used during compilation to the $PATH environment variable without any luck (Dependency Walker still shows unresolved dependencies).

4
What compiler or IDE are you using?kizeloo
@kizeloo Thank you very much for your response! I am using Visual Studio 2013.Ben N.

4 Answers

96
votes

These are 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 alarms and nothing to worry about. You're not missing anything.

Also see On API-MS-WIN-XXXXX.DLL, and Other Dependency Walker Glitches.


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.

25
votes

In addition to what @Ofek Shilon said, I usually ignore following dlls that dependency_walker identified as missing when I try to find missing dlls for my program. You will see that your program runs fine when dependency_walker says these dlls are missing.

  • API-MS-WIN-*.dll
  • EXT-MS-WIN-*.dll
  • IESHIMS.dll
  • EMCLIENT.dll
  • DEVICELOCKHELPERS.dll

You can search for dlls other than the ones above to resolve your problem.

4
votes

I also ignore:

  • EFSCORE.DLL
  • WPAXHOLDER.DLL
2
votes

Dependencies program helped me find a missing DLL in no time. It is open source and available here: https://github.com/lucasg/Dependencies