回答的好有奖励,如何编程得到一个应用程序所加载的DLL文件清单(动态加载的不算)? PE EXE 文件头部信息中记录着静态加载的 DLLs。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 分析PE文件没什么的。我身边一位兄弟闲着无事,两天就写了一个比较完整的PEInfo.exe,专门查看PE文件的各种信息。 OK,分析PE文件格式是一种方法,而且应该是最本质的方法!其他方法呢?尽可能找出最多的方法! <<windows核心编程>>,里面有代码. 动态载入线程的办法可行,但是限于WIN2000 to swxh(中重):我就是把《Windows核心编程》这本书放在家里了,没有在身边!哎! to huangbeyond(校园人渣):请说得明白一些,我不明白你的意思! PSAPI || toolhelp api || native api ,但是只能运行时得到。。看来也是不行的呵呵关注一下 同意black_fox(black_fox)我昨天晚上回去想了一下,Jeffery Richter的《Windows核心编程》里都是针对运行状态的进程而言的,如果从EXE文件直接得到,恐怕《Windows核心编程》里的技术用不上。所以现在还是只有一种方法:直接分析PE文件不知道还有什么API函数可以完成这一任务? 应该是有办法的。你象exescope那种软件,不但能看出你这个软件用了import了那些DLL,而且还可以看调用了那些函数,我记得好象“深入浅出”中提到过。PE前面有一个结构 data directories, starting at 0xb8: Address Size 00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_EXPORT (0) e0 01 00 00 6f 00 00 00 ; IMAGE_DIRECTORY_ENTRY_IMPORT (1)//这里应该可以找到的。。 00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_RESOURCE (2) 00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_EXCEPTION (3) 00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_SECURITY (4) 00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_BASERELOC (5) 00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_DEBUG (6) 00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_COPYRIGHT (7) 00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_GLOBALPTR (8) 00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_TLS (9) 00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG (10) 00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT (11) 00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_IAT (12) 00 00 00 00 00 00 00 00 ; 13 00 00 00 00 00 00 00 00 ; 14 00 00 00 00 00 00 00 00 ; 15 还是老外开放。这有一个VB写的http://www.domaindlx.com/e_morcillo/download.asp?type=cod&file=grl_pe,基本上能实现些功能。 YES,我今天查了书,在《Windows95系统程序设计奥秘》中有一章专门分析PE格式,这下问题解决了。不过有没有其他方法,大家讨论一下! 请教编译时的错误 在使用VFM时,icopen函数返回总是NULL。 怎么把控件动态的建立在CTabCtrl控件的指定页上? MFC创建了ODBC数据库,在实现条件查询的时候,出了问题 . 我要结贴了! 有关一个编译问题!!!!!!!!!! 这个错误怎么回事?高手请进! VC6.0>> fatal error LNK1120: 5 unresolved externals 程序编译问题 MFC编程 请问高手:按钮不能用?为什么??? 请了
但是限于WIN2000
我就是把《Windows核心编程》这本书放在家里了,没有在身边!哎!
请说得明白一些,我不明白你的意思!
Address Size
00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_EXPORT (0)
e0 01 00 00 6f 00 00 00 ; IMAGE_DIRECTORY_ENTRY_IMPORT (1)//这里应该可以找到的。。
00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_RESOURCE (2)
00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_EXCEPTION (3)
00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_SECURITY (4)
00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_BASERELOC (5)
00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_DEBUG (6)
00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_COPYRIGHT (7)
00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_GLOBALPTR (8)
00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_TLS (9)
00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG (10)
00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT (11)
00 00 00 00 00 00 00 00 ; IMAGE_DIRECTORY_ENTRY_IAT (12)
00 00 00 00 00 00 00 00 ; 13
00 00 00 00 00 00 00 00 ; 14
00 00 00 00 00 00 00 00 ; 15