为了将程序(32位)从Win XP移植到Win 7/8/10(64位),我必须列出其依赖项(如果可能,请列出所有依赖关系树)。我尝试了一些我知道的工具:


依赖行者-看不到Wow64层。
ProcessExplorer-给出了另一个结果,这次出现了Wow64层,但没有出现所有的树。

我如何列出程序的依赖关系的确切列表?

评论

如果您有源文件,为什么需要查看该独立性?通常,在开发阶段,您需要考虑64位目标,以便使用适当的API和类型。此外,在针对上述操作系统时,还必须注意一些特殊性。您需要为此咨询MSDN。至于这个问题,您不需要看整个树,因为wow64层足以了解使用了什么API。考虑到您将看不到运行时解析的API。

这是一个旧程序,我找不到每个源,其中有些丢失了,也许是用来制作此程序的IDE。我需要查看依赖关系树,以确保该程序可以在将来的操作系统上运行,如果不能运行,我们必须知道我们是否必须搜索

尽管它可能无法直接解决您的问题,但我想补充一点,就是在其他所有操作失败时,您可以尝试使用procmon来查看Windows尝试加载的DLL。它不是离线方法,也不会显示任何树,但是它具有很大的优势,您可以看到应用程序真正尝试加载的内容以及加载的顺序。

#1 楼

您可以使用以下工具检查并尝试恢复有关PE文件的信息:



PEiD它具有广泛的pe文件编辑功能

检测它很容易-用于PE分析的另一个非常有用的工具

从windbg查看导入表-如果上述操作不是很有帮助,则可以始终使用调试器。

Dumbin- Microsoft实用程序,用于检查PE文件,其中包括PE导入。

这些工具可以显示有关程序具有的导入的所有信息。

评论


谢谢,这有助于我理解为什么processExplorer的结果不同。

–弗洛里安·杰拉德
15年1月13日在21:21