如何知道给定进程是否加载了给定的DLL?

时间:2009-10-12 09:37:36

标签: c++ winapi

  

可能重复:
  How to programmatically get DLL dependencies

在Windows上,在C ++程序中,我想知道给定的DLL(我知道路径)是否由给定的外部进程(我知道exe的路径)加载,使用win32函数。 必须可以列出进程加载的所有DLL,如进程资源管理器那样。

法比安

1 个答案:

答案 0 :(得分:3)

首先,您已获得所需流程的ID。使用描述here的EnumProcesses函数查找所需的过程。提供了一个很好的example来列出所有进程及其名称,您可以将它们作为起点。

作为第二步,您可以列出所有模块,即每个进程加载的DLL。 使用EnumProcessModules功能。

This example主要执行您想要的操作,您只需添加更多检查代码即可过滤您的流程和模块。