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

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

发布时间: 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.几

热点内容
eclipse编程 发布:2025-02-06 10:02:21 浏览:636
开源库编译管理员 发布:2025-02-06 09:39:14 浏览:914
脸书怎么注册安卓 发布:2025-02-06 09:36:47 浏览:381
车用安卓导航无线打不开什么原因 发布:2025-02-06 09:27:50 浏览:790
安卓与苹果如何互相传送文件 发布:2025-02-06 09:27:40 浏览:26
华为服务器盘符如何分配 发布:2025-02-06 09:26:41 浏览:560
传奇h5源码下载 发布:2025-02-06 09:26:06 浏览:78
编译uclibc 发布:2025-02-06 09:09:04 浏览:152
用gcc编译16位汇编 发布:2025-02-06 09:06:07 浏览:823
什么低端安卓手机不卡 发布:2025-02-06 09:03:32 浏览:14