如何判断某进程是否加载某DLL文件?(50分)

  • 主题发起人 主题发起人 Ch4o.Jt
  • 开始时间 开始时间
C

Ch4o.Jt

Unregistered / Unconfirmed
GUEST, unregistred user!
如何判断explorer.exe进程中是否加载xxx.dll这个DLL文件? Help Me.. o(>_<)o
[:D][:D][:D] 希望可以给出代码...谢谢各位牛人~!
 
下面的代码列出进程调用的所有模块
procedure TProcessInfo.EnumModules(const AList: TStrings);
var
snap : THandle;
me32 : TMODULEENTRY32;
begin
if FHandle = 0 then
//FHandle为进程PID
Exit;
snap := CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, FHandle);
if snap <> 0 then
try
me32.dwSize:= SizeOf(TMODULEENTRY32);
if Module32First(snap, me32) then
begin
AList.Add(AnalyzeFileName(me32.szExePath));
while Module32Next(snap, me32)do
AList.Add(AnalyzeFileName(me32.szExePath));
end;
finally
CloseHandle(snap);
end;
end;
 
很简单,Ctrl+Alt+V就可以打开调试窗口,并且可以看到此进程的所有线程的开启与退出,以及用到的所有DLL
给分,呵呵
 
接受答案了.
 
后退
顶部