Dependencies
is a rewrite of the legacy software Dependency Walker which was shipped along Windows SDKs, but whose developement stopped around 2006.
Dependencies
can help Windows developers troubleshooting their dll load dependencies issues.
- v1.5 :
- Support of Sxs parsing
- Support of api set schema parsing
- API and Modules list can be filtered
- v1.0 -- Initial release
NB : due to limitations on /clr compilation, Dependencies
needs Visual C++ Redistributable installed to run properly.
Dependencies
is currently shipped as a binary (no installer present). Just uncompress the archive and click on it.
Since the binary is not signed, SmartScreen
might scream at runtime. Dependencies
also bundle ClrPhTester.exe
, a dumpbin-like executable used to test for non-regressions.
Dependencies
currently does not recursively resolve child imports when parsing a new PE since it can be really memory-hungry to do so ( it can over a GB even for "simple" PEs ). This behaviour can be overriden (app-wide) via a property located in "Options->Properties->Tree build behaviour".
Tree build behaviours available :
ChildOnly
(default) : only process PE child imports and nothing beyond.RecursiveOnlyOnDirectImports
: do not process delayload dlls.Recursive
: Full recursive analysis. You better have time and RAM on your hands if you activate this setting.
At the moment, Dependencies
recreates features and "features" of depends.exe
, which means :
- Only direct, forwarded and delay load dependencies are supported. Dynamic loading via
LoadLibrary
are not supported (and probably won't ever be). Min-win
dlls are not propertly supported. (UPDATED : support of api set schema redirection in 1.5)- There are no checks between Api Imports and Exports for the moment, only dll presence is supported.
- No support of esoteric dll load paths (via
AppPaths
orSxS
manifests entries). (UPDATED : minimal support of sxs private manifests search).
Special thanks to :
- ProcessHacker2 for :
phlib
, which does the heavy lifting for processing PE informations.peview
, a powerful and lightweight PE informations viewer.
- Dragablz a C#/XAML library which implement dockable and dragable UI elements, and can recreate the MDI programming model in
WPF
. - @aionescu, @zodiacon and Quarkslab for their public infos on ApiSets schema.
- Thomas levesque's blog which pretty much solved all my
WPF
programming issues. HisAutoGridSort
is used in this project