【问题标题】:Dependency Walker: missing dllsDependency Walker:缺少 dll
【发布时间】:2016-07-14 09:45:04
【问题描述】:

我一直在尝试使用 Dependency Walker 解决可执行文件的 .dll 依赖关系。目前,我缺少以下形式的 .dll:

API-MS-WIN-XXX

EXT-MS-WIN-XXX

例如:

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

有人对如何解决这些问题有任何想法吗? 任何帮助将不胜感激!

其他信息:我使用 Visual Studio 2013 编译了可执行文件。最有趣的是我在编译过程中没有收到任何错误。但是,由于缺少依赖项,我无法运行它。我还附上了一张依赖walker的截图:

更新 1: 作为解决问题的尝试,我尝试将 VS 在编译期间使用的库的路径添加到 $PATH 环境变量中,但没有任何运气(Dependency Walker 仍然显示未解决的依赖项)。

【问题讨论】:

  • 您使用的是什么编译器或 IDE?
  • @kizeloo 非常感谢您的回复!我正在使用 Visual Studio 2013。

标签: windows dll visual-studio-2013 dependencies dependency-walker


【解决方案1】:

这些是 API 集 - essentially, an extra level of call indirection 从 Windows 7 开始逐渐引入。依赖项遍历器的开发似乎在此之前很久就停止了,它无法正确处理 API 集。

所以这些都是误报,无需担心。你不会错过任何东西。

另见On API-MS-WIN-XXXXX.DLL, and Other Dependency Walker Glitches


编辑:直到 2017 年 10 月,才终于有人尝试填补这一空白。认识Dependencies by lucasg。到目前为止,我只是简单地摆弄了一下它,但它很好地处理了 API 集,并且至少非常值得关注。

【讨论】:

  • 优秀的情报! :-)。但这不是“假阳性”而不是“假阴性”吗?只是吹毛求疵,这对我来说是今天最好的新信息。期待测试Dependencies。谢谢!
  • 好吧,当我的库无法加载 (LoadLibrary) 时,我正在尝试解决问题。我似乎无法弄清楚为什么。其中一些提到的文件甚至不在我的系统上。这仍然是误报吗?
  • @MartinKosicky 提到的文件甚至不是文件。它们是 Windows 加载器的“虚拟标记” - 并且不应该存在于您的磁盘上。所以这绝对不是你的问题
  • 确实,lucasg 的 Dependencies 删除了错误的“丢失的包”,并显示(在我的情况下)它需要一个不同的 Python 版本。
  • 作为一个阅读速度太快的人,有时将依赖关系的评论移到第一段可能会有所帮助。 “...它无法正确处理 API 集。您可能希望通过 lucasg 尝试 Dependencies 一个应该正确处理这些的较新的依赖项应用程序”
【解决方案2】:

除了@Ofek Shilon 所说的之外,当我尝试为我的程序查找丢失的 dll 时,我通常会忽略依赖项步行者识别为丢失的以下 dll。当dependency_walker 说这些dll 丢失时,您会看到您的程序运行良好。

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

您可以搜索上述以外的dll来解决您的问题。

【讨论】:

    【解决方案3】:

    Dependencies 程序帮助我立即找到了丢失的 DLL。它是开源的,可在此处获得:https://github.com/lucasg/Dependencies

    【讨论】:

    • 这已经添加到original answer
    • 还有@Steji 的回答(已删除)。
    【解决方案4】:

    我也忽略了:

    • EFSCORE.DLL
    • WPAXHOLDER.DLL

    【讨论】:

      猜你喜欢
      • 2013-10-05
      • 2014-09-06
      • 2012-09-13
      • 2016-02-09
      • 2011-02-03
      • 2014-02-23
      • 2018-10-06
      • 2023-03-23
      • 1970-01-01
      相关资源
      最近更新 更多