这是Depends.Exe下(xià)载,用来显示与(yǔ)一个可执行文件(exe或者dll)相关的(de)依赖项(dll),以及(jí)该exe或dll引用了(le)这些dll中的哪些接口。同时也可(kě)以看到每个被依(yī)赖的dll中的所有导出的函数接(jiē)口(kǒu)。
Depends.Exe:Dependency Walker--Depends.exe(平(píng)时(shí)上班时会用VC自带的这(zhè)个工具,分析dll的链接对不对,平时测(cè)试同(tóng)事,可(kě)能会(huì)在一台(tái)机子(zǐ)上保存多个的版本)。
反编译工具Depends 推荐使用比(bǐ)较不(bú)错的Depends.exe,分析dll和exe所(suǒ)依赖(lài)的dll。可以看到dll以及dll的函数,可以查看导入导出(chū)函数,挺好用的。VC++ Depends用来显示与一个(gè)可执行文(wén)件(exe或(huò)者dll)相(xiàng)关的依(yī)赖项(dll),以及(jí)该exe或dll引用了这些dll中的哪些(xiē)接口。
Depends Wallker是(shì)一个VC反编译工具,可(kě)以查看PE模块的导入模块以及导入和(hé)导(dǎo)出(chū)的函数以及动(dòng)态剖(pōu)析PE模(mó)块(kuài)的依赖性(xìng)和解析(xī)C++的函数名称。
近期很多(duō)兄(xiōng)弟(dì)们问怎(zěn)么样打包程序,如何获取所需dll的信息(xī),这就需要使(shǐ)用VC所带的Depends软件(jiàn),该软件在(zài)VC6安装目录下的tools文件(jiàn)夹里面D:/Microsoft Visual Studio/Common/Tools,直接(jiē)
双击执行(háng),然后打(dǎ)开exe文件即可,它主要有下(xià)面几个注(zhù)意事项(xiàng):
1)所编的(de)软件所需(xū)的Dll文件,可以得到相应的Dll路径,版本,属性等。
2)窗(chuāng)口分四部分:
左(zuǒ)上角是Dll信息窗口,显示你程(chéng)序(xù)所需的Dll模块,
右边第一(yī)个窗口是所选的Dll模(mó)块所使用的函数,
右边(biān)第二个窗口是所选Dll模块(kuài)的(de)所(suǒ)有的导出函数,
下面窗口是所有需(xū)要的Dll模块的属性
3)右边两个窗口出现四个(gè)标签:序号,提示,函数,入口点
如果利用导出是函(hán)数,那么出现函数名,如果导出的是序号,那(nà)么函数项就是(shì)N/A(无法显示)
出现红色提示(shì)表示不正常(cháng),一般为没(méi)有该(gāi)导出函数
4)该工具得到的是(shì)你软件(jiàn)中隐式链接的Dll库,也就是用lib关联的(de)Dll模块,
无(wú)法显(xiǎn)示显式(shì)链接的(de)Dll模块,也就是用LoadLibrary函数(shù)导入的Dll函(hán)数。(切记切记!)
5)无法提(tí)供Borland C++ Builder所提供的Dll文件,无法提供vxd软件的(de)调用。
