过去一段时间断断续续在搞dll,最简单那种。一直疑虑有多少内容可以被反汇编出来。come across 这个题目,算是个开始。备忘
1。dumpbin /exports example.dll > example.def
2。 修改example.def 为def格式,如(例子来自网上):
TM_ClearDecoderBuff@4 @1
TM_CloseDecoder@4 @2
TM_DecodePicture@4 @3
3。 lib /def:yourdll.def /machine: IX86 /out:yourdll.lib
对第一步,用工具也可,只要能看到dll的函数列表。比如VC的depends
以下copy:
注意的是当有些动态库DUMPBIN的只有函数名,无"@nn"的参数格式,如C++Builder写的DLL,输出就只有函数名符号,链接时就会报错: error LNK2002:unresolved external symbol "functionname@nn" 提示程序中引入的函数符号无法识别,这时只要将DEF文件中相应的函数名称改为functionname@nn方式,重新建立 LIB,重新链接即可.