当前位置:首页 » 编程软件 » 编译后的代码可以恢复成源代码吗

编译后的代码可以恢复成源代码吗

发布时间: 2022-08-22 13:49:07

㈠ 是不是所有的程序都可以反编译得到原代码

Android APK中的Java代码可以被反编译到什么程度主要看APK的加密程度。

第一种情况:无混淆无加密无加壳。
直接利用Dex2jar和JD-GUI可把源码从APK里抠出来,代码逻辑清晰,基本上做到可复用,只是资源文件的引用需要计算一下。

第二种情况:混淆。
通常是利用Proguard做的防护。因为是对jar做的不可逆混淆(除非有mapping),因此不能还原成原来的代码。但是代码结构,代码逻辑一致,只要花长时间对代码进行梳理一样可找准核心代码,解密方法跟第一种一致。

第三种情况:加密。
这里以DexGuard为例。对于这种代码加密的方法,在程序运行中必定会进行解密,只要抽出它解密的逻辑便可。PS:我自己做过DexGuard的解密,如果用Dex2jar反编译看的话逻辑是不对的,一定要从Smali代码看。后来发现网上已经有人做了。
解密的脚本:A look inside Dexguard

第四种情况:加壳。
这种情况跟第三种类似。无论你怎么加壳,运行的时候必定是Dalvik可识别的Odex代码,建议直接在内存里mp出来。这里推荐Xpose的ZjDroid。

㈡ complie之后的文件怎么恢复成原来的源代码的样子

不行的吧

㈢ 请问被编译后的易语言程序还能重新搞回未编译的样子吗

一般情况下是不可能完全和原先一样的,只能用反编译器看原先的源码

㈣ 用C++编出的exe文件能否被还原成cpp代码

可以但是相当不现实。与汇编的精简不同,C语言的编译链接会把相当多冗余的算法带到Obj和Exe里去(一来为了兼容不同硬件环境把各种算法都考虑到,二来因为其效率确实远不如汇编)。一个几十KB的Exe可能反编译出一本字典那么多的源程序。如果你不嫌费事可以上网找C语言的decompile软件试试。

㈤ 已知一个程序是C++编写的,有没有办法把她恢复成C++源代码

C/C++程序(.c/.cpp),首先会进行预编译,编译后还是C/C++程序(.i)。这个结果会再进行编译,结果会是汇编代码文件(.s)。汇编代码文件再进行汇编,结果会是可重定位的目标文件(.obj)。可重定位的目标文件再进行链接。结果就会产生可执行的目标文件,也就是通常win32平台上的.exe文件。
对于.exe或者.obj文件,我们可以通过反编译工具(如Unix下的objmp)把它们还原成汇编代码文件。但是再要往上一步,从编译原理的角度来说,就很困难了。目前这样的工具我还没听说过。

㈥ exe反编译后的获得的源码能复原为exe吗

看中间语言。然后用C#写个出来呗

㈦ 已打包的C#项目如何还原成代码

如果你说的项目是sln的话,那么他就是源代码,可以更改

如果是别人编译后的exe或dll,去下一个reflector吧,把源代码复制出来,再自己改吧。

㈧ 怎么把编译后的文件改成源码

对不同的编译器有各种反编译软件,但是不能完全还原,很多地方还读不通,所以想知道源码是不可能滴!

㈨ 有可以将exe文件还原成C++文件或VF等源代码的软件吗

这叫反编译。用vc写的程序编译后的执行文件为.exe,反编译后还原出vc源码,用vf写的程序编译后的执行文件为.exe,反编译后还原出vf源码,不存在“从exe文件里还原出VC或VF的源代码”的“或”的情况。
反编译vf的软件叫unfox,网上有down,现在的版本是3.几

热点内容
安卓手机电影怎么投屏到ipad上 发布:2025-03-20 04:27:23 浏览:677
苹果安卓基于什么开发 发布:2025-03-20 04:20:52 浏览:520
算法化是 发布:2025-03-20 03:48:20 浏览:771
拆二代访问 发布:2025-03-20 03:47:34 浏览:63
随机数排序c语言 发布:2025-03-20 03:35:31 浏览:498
当前页面脚本发生错误类型不匹配 发布:2025-03-20 03:26:47 浏览:992
strutsajax上传图片 发布:2025-03-20 03:25:03 浏览:386
手机在线缓存 发布:2025-03-20 03:21:06 浏览:46
ftp路径上传时间 发布:2025-03-20 03:13:42 浏览:104
电脑连接通讯服务器失败怎么回事 发布:2025-03-20 03:10:30 浏览:287