怎样从扩展DLL中得到.H和.LIB文件?
现有一个导出类的扩展DLL, 怎么样能得到它的.H (类头文件) 和 .LIB 文件啊?
[解决办法]
up,感觉很难吧
[解决办法]
帮顶
[解决办法]
DLL2Lib
[解决办法]
^_^,关键要获得函数参数等
[解决办法]
试试Depends工具。
[解决办法]
总之不容易
[解决办法]
帮顶
学习ING...........
[解决办法]
imp进来是不是就可以看到所有的类和方法了?
[解决办法]
有点反汇编的味道。
[解决办法]
Depends
[解决办法]
回复人:oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣) ( 五星(高级)) 信誉:130 2007-4-19 21:11:14 得分:0
?
^_^,关键要获得函数参数等
============================
用WinDBG吧!?
[解决办法]
如果是这个DLL是COM组件的话,用import就可以。普通的DLL没有自描述信息,用IDAPro可以分析出函数定义,但是对于结构体和类定义就没有办法了。
[解决办法]
学习
[解决办法]
学习
[解决办法]
用PE Explorer看一下,如果是导出类的话,嘿嘿……
[解决办法]
检查PE文件头的export section,再用Undeco..()把C++类名称去掉修饰,基本上可以看出函数的原型。如果某个成员有特殊的压栈习惯还要对照反汇编码,看看入栈顺序。对于C风格的函数几乎没有办法弄清楚。
如果只对某个导出类的DLL,借助上面的方法,自己构建一个call table,用boost::function或者自己构建一个functor数组来调用,应该够用了。(要是这个dll真有那么重要,而你觉得搞不定也可以找我,indep@263.net)
顺便说一句,COM接口函数跟C++成员函数不同,this指针总是第一个参数,压栈顺序是从右到左(__stdcall)
[解决办法]
做Modula-3的牛人居然从PEDUM自己搞了一个DLL2LIB - 真正的import library,只是CM3没有win版
http://modula3.elegosoft.com/cm3/
在m3-sys目录里面
[解决办法]
学习
[解决办法]
感觉除了反汇编没后什么好方法,不过反汇编那东西大也不能得出全部.如果参数中用到了指针的话还必须看通程序中的很多代码,郁闷