【发布时间】:2016-06-22 18:48:13
【问题描述】:
在检查 Microsoft Word 加载的模块时,我发现了一些非常奇怪的东西。我编写了一个小程序来输出所有加载的 DLL 的位置。这是输出:
当我尝试在我的 PC 上找到这些模块时,我无法在给定位置找到它们,而是在另一个位置:
我无法弄清楚为什么 DLL 的路径不同,而且我在 Google 中也找不到任何与它相关的东西,尽管我怀疑它与 VFS 的事情有关。
也就是说,Process Explorer 设法以某种方式显示 DLL 的原始位置。
谁能告诉我 Process Explorer 是如何做到这一点的,以及如何在我的代码中实现相同的结果?
--------------- 编辑----
我也尝试过注入 DLL 并遍历 WINWORD 的 LDR,但仍然看不到原始 DLL 的位置。
Sysinternal 的 ListDlls 实用程序也不显示原始 DLL 位置。 就目前而言,只有 Process Explorer 显示正确的位置。
【问题讨论】:
-
@alk:如果这些是软/硬链接,它们将是用户可见的。
-
@alk,这些不是链接。
-
dumpbin /imports winword.exe建议 Office 2016 正在使用 App-V -
@theB,进程资源管理器如何获取正确路径?
标签: c++ c windows debugging winapi