工具: PE文件依赖关系检查

参考资料:

http://www.codeproject.com/Articles/43180/Dependency-Checker.aspx

原始Demo,不是我要的效果.原始demo功能是给定一个dll,然后在一个指定目录中遍历,所有依赖与这个Dll的PE文件.

我想要的效果是象vcDepends那样的效果,给定一个PE文件,看这个文件依赖的所有PE文件.我准备改一下这个Demo,最后的效果就是vside中的DEPENDS.exe

我把修改版的名称定位 PeDependsChecker,里面用到的系列API是‘Image Access’,msdn中有介绍,没有例子.

现实软件中vc的Depends.exe,safe360里面也有这种小工具.

用途:

把这种工具嵌入我们的工程和得到文件详细版本信息的模块,计算文件哈希值结合起来,可以实现自校验依赖关系,和工程运行环境的完整性检查.

在主程序运行之前,先运行环境检查模块,如果运行环境不在,缺失,依赖文件的版本不对,文件被修改过,就不让程序继续运行, 避免了很多难看的崩溃问题和知识产权保护. 用途还是很多的.

<2011_0102>

找到一个完成整的工程,很强大的一个Demo.如果不是为了研究,根本不用改,能直接用.

http://www.codeproject.com/KB/tips/PE_File.aspx

Parse a PE (EXE,DLL,OCX Files ) and New Dependency Walker

<2013_0815>

Depends.exe 在WDK中有,位置如下:

\WinDDK\7600.16385.1\tools\Other\i386\Depends.exe

\WinDDK\7600.16385.1\tools\Other\ia64\Depends.exe

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...