title: UnsatisfiedLinkError (Can't find dependent libraries) in a Java due to recursive dependency
body: <p>I have a Java application that loads some DLLs from a specified folder at runtime using System.loadLibrary(). The application successfully loads all but one of the DLLs that it finds in the folder. In the case of the unsuccessful load, it reports the error: </p>
  
  <blockquote>
    <p>C:\myapp\lib\foo.dll: Can't find dependent libraries</p>
  </blockquote>
  
  <p>I've opened foo.dll in DependencyWalker but it doesn't report any problems (it lists IESHIMS.DLL and WER.DLL as missing but these are warnings and as far as I know, these can be ignored). The dependency tree lists WSOCK32.DLL, KERNEL32.DLL and one other application specific DLL which is included in the lib folder (and which successfully loads).</p>
  
  <p>My best guess is that foo.dll depends in turn on another DLL which is not present in my lib folder but I don't know how to get any further information about what this dependency is. Can anyone suggest a way of debugging this? </p>