问一下高手 c++dll文件如何反编译 看源代码啊????

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了问一下高手 c++dll文件如何反编译 看源代码啊????相关的知识,希望对你有一定的参考价值。

1、首先在反编译工具中打开DLL文件。

2、然后用“程序集管理器”浏览DLL文件的节点。

3、双击某个节点查看它的代码,然后在右侧栏中,弄清楚不同的代码。

4、接着将代码导到Visual Basic中。

5、最后在Visual Studio中编辑代码,就完成了反编译DLL文件。

参考技术A

若这个DLL编译时没有进行C++优化和全局优化,反汇编后是完全可以反编译的,但是变量名函数名全部丢失,这样无法看懂。

若这个DLL编译时经过了C++优化或全局优化,二进制代码小于512个字节,否则是基本不可能反编译的。

<script>window._bd_share_config="common":"bdSnsKey":

,"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16","share":

;with(document)0[(getElementsByTagName('head')

[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/ap

i/js/share.js?v=89860593.js?cdnversion='+~(-newDate()/36e5)];</script>

扩展资料

DLL故障排除工具

DependencyWalker检查是否丢失DLL。DependencyWalker检查是否存在无效的程序文件或DLL。DependencyWalker检查导入函数和导出函数是否匹配。

DependencyWalker检查是否存在循环依赖性错误。DependencyWalker检查是否存在由于针对另一不同操作系统而无效的模块。

通过使用DependencyWalker,可以记录程序使用的所有DLL。DLLUniversalProblemSolverDLLUniversalProblemSolver(DUPS)工具用于审核、比较、记录和显示DLL信息。

组成DUPS工具的实用工具:Dlister.exe该实用工具枚举计算机中的所有DLL,并且将此信息记录到一个文本文件或数据库文件中。

参考技术B

c++dll文件反编译源代码的操作步骤如下:

1、在开始菜单内找到Reflector工具。

2、打开Reflector点击【File】-->【Open Assembly...】在打开的对话框内选择要反编译的DLL文件。

3、打开DLL成功后,会在左侧的最下方看到反编译DLL文件。

4、点击展开该DLL文件就可以看到样关的类,以及类反编译后的代码,这样问题就解决了

参考技术C 所谓的破解就是反编译。。
反编译的第一个步骤就是先脱壳。。
关于脱壳可参照这个链接。

脱壳完成了或者根本没壳就可以进行下一步了。
反向编译
高级语言源程序经过 编译 变成可执行文件,反编译就是逆过程。
但是通常不能把可执行文件变成高级语言源代码,只能转换成汇编程序。
计算机软件反向工程(Reversepengineering)也称为计算机软件还原工程,是指通过对他人软件的目标程序(可执行程序)进行“逆向分析、研究”工作,以推导出他人的软件产品所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素,作为自己开发软件时的参考,或者直接用于自己的软件产品中。
反编译是一个复杂的过程,所以越是高级语言,就越难于反编译,但目前还是有许许多多的反编译软件:
VB: VBExplorer 和VBRezQ;只能反编译界面图像,好像代码不能完全反编译
JAVA: JAD ;java的反编译比较常见,所以反编译比较完全, 将class文件反编译成java文件也是有可能的
C++ : eXeScope
Dephi: DEDE
c#:Reflector
本回答被提问者采纳
参考技术D 搜索DLL Decompiler

c++代码反编译

我用VS2008开发的windows桌面程序,为什么可以用Reflector.exe反编译出源代码呢 。。。为什么啊 不是说不能看到的吗 ?

c++分为几中啊 为什么还有托管C++之说 ?

进入.Net之后,VC可以用来开发本地的win32程序,还有托管的.Net程序

其中win32程序,比如mfc程序,使用传统C++语言,是直接编译为机器指令的,最多反汇编到汇编代码

但是.net程序,使用微软为.net平台扩展的C++/CLI语言(.net 1.1时代有一种托管C++语言,是微软的早期作品,因为稳定性欠佳,已被C++/CLI取代),编译之后的是.net平台的IL语言,因为IL汇编语言较传统汇编指令远为“高级”,通过简单的反汇编器就可以得到几乎一摸一样的源代码,楼主实际看到的是这种.net程序,这才是通过Reflector能够看到的反汇编代码
参考技术A VS2008里有微软特有的托管c++
意思就是将c++绑定到类似c#的那种.net虚拟机里运行,所以才能反编译,那是托管代码,c++/cli
参考技术B 微软发明的什么托管c++ , 那根本不是c++ 参考技术C 楼上回答得都很清楚了。
C++语言只有一种!
工具很多!

以上是关于问一下高手 c++dll文件如何反编译 看源代码啊????的主要内容,如果未能解决你的问题,请参考以下文章

c++代码反编译

如何利用ILSPY反编译工具重建C#NETWeb源码解决方案

如何利用ILSPY反编译工具重建C#NETWeb源码解决方案

PB(PowerBuilder)做的系统,反编译后结构如图所示,现要按此结构重新开发生成abcd.exe和dll文件,怎么做

高手请进。关于CLASS文件。。。

dll文件用啥工具可以破解