Dependencies

C#源码 2025-08-16

Dependencies - 开源现代依赖沃克

在这里下载

(如果您正在运行AV,请改用此下载)

NB:由于 /CLR汇编的限制, Dependencies需要可视觉C ++重新分配以正确运行。

概述

Dependencies是沿Windows SDK运输的旧软件依赖性Walker的重写,但其开发在2006年左右停止。 Dependencies可以帮助Windows开发人员对其DLL负载Dependencies问题进行故障排除。

发行

  • v1.11:
    • 许多错误修正和增量改进
    • 冠状病毒病大流行
  • v1.10:
    • 许多错误修正和增量改进
    • Windows 8.1 Apisets解析的支持
  • v1.9:
    • 显示导入和导出的方式依赖。exe确实。
    • 添加了用于搜索文件夹和工作目录的用户自定义
    • 添加了llvm demangler到可用的符号demangling
    • 修复了WOW64 FSREDIRECTION错误
    • F5现在可以刷新分析
    • 添加了CLR组装Dependencies枚举
    • 在没有peview.exe的情况下添加了一个包装选项(触发了一些AV)。
  • v1.8:
    • 为Dependencies添加x86/x64变体
  • v1.7:
    • 添加CLI工具“ Dependencies .exe”
  • v1.6:
    • 添加appx包装
  • v1.5:
    • 支持SXS解析
    • 支持API设置模式解析
    • 可以过滤API和模块列表
  • V1.0-初始版本

安装和用法

当前, Dependencies作为两个二进制文件(不存在安装程序): Dependencies .exe作为CLI工具和Dependencies Gui.exe的GUI对应物(请参阅ScreenShot)。只需单击上面的发行号之一(最好是最新版本),下载并取消压缩存档和运行Dependencies Gui.exe 。由于未签署二进制文件,因此SmartScreen可能会在运行时尖叫。 Dependencies还包装ClrPhTester.exe ,一种类似于DumpBin的可执行文件,用于测试非回归。

当前, Dependencies在解析新的PE时无法递归解决儿童导入,因为它确实可以渴望记忆(即使是“简单” PES,它也可以超过GB)。可以通过位于“ Options-> properties-> Tree Build行为”中的属性覆盖此行为(应用程序范围)。

可用的树木建造行为:

  • ChildOnly (默认):仅处理PE子进口,而无需处理。
  • RecursiveOnlyOnDirectImports :请勿处理延迟载荷DLL。
  • Recursive :完整的递归分析。如果您激活此设置,最好有时间和RAM:

限制

目前, Dependencies重新创建了depends.exe的功能和“特征”,这意味着:

  • 仅支持直接,转发和延迟负载Dependencies 。不支持通过LoadLibrary的动态加载(可能永远不会)。
  • 自1.5以来的API设置模式重定向的支持
  • 在API进口和出口之间进行检查。
  • SXS私人清单的最小支持仅搜索。

建筑

建筑物非常简单。唯一需要注意的是,您需要选择“调试”或“释放”配置和“ x64”或“ x86”平台,这可能不是默认值。

学分和许可

特别感谢:

  • ProcessHacker2 for:
    • phlib ,为处理PE信息的繁重举重。
    • peview ,一个功能强大且轻巧的PE信息查看器。
  • Dragablz一个C#/XAML库,该库可以实现可码头和可拖动的UI元素,并且可以在WPF中重新创建MDI编程模型。
  • @aionescu,@zodiacon和Quarkslab在Apisets架构上的公共信息。
  • Thomas Levesque的博客几乎解决了我所有的WPF编程问题。他的AutoGridSort在这个项目中使用
  • Venkatesh Mookkan为此项目中使用的ListView的FilterControl
  • 拆除Windows上的GCC符号
下载源码

通过命令行克隆项目:

git clone https://github.com/lucasg/Dependencies.git