反编译软件怎样用将一个exe件件进行反编译
反编译软件 时间:2021-11-03 阅读:(
)
jad反编译工具怎么用?
应该是在Eclipse安装Java反编译工具吧,过程很简单:
1、下载jad.exe以及jadclipse_xxx.jar。
(注意xxx表示版本,最好先看看你的Eclipse版本,然后网站搜索对应jar包以及jad.exe版本)
2、把jadclipse_xxx.jar放在Eclipse根目录plugins文件夹里、把jad.exe放在jdk根目录bin文件夹里。
3、设置参数(Eclipse):Window->Preferences->Java->JadClipse-->Path?to?piler,指向jad.exe的目录。
4、配置*.class文件关联(Eclipse):Windows-->Perference-->General-->Editors-->File?Associations中修改“*.class”默认关联的编辑器为“JadClipse?Class?File?Viewer”。
如何把自己修改过的手机游戏打包成apk安装包
您好, 您可以使用反编译软件将您的游戏【天天星连萌】进行反编译 在反编译的文件夹中,修改您的手机游戏 然后在用反编译软件打包成apk即可 在腾讯电脑管家——软件仓库中有多款反编译软件 您可以选择合适的反编译软件 推荐使用【改之理】 傻瓜式操作,简单易懂 希望可以帮到您,望采纳 腾讯电脑管家企业平台:/c/guanjia/请问 .exe 文件用什么 软件来编辑 修改呢?
exe文件其实就是2进制文件。
UltraEdit 这个软件就是专业的2进制编辑器。
另外很多汇编变成工具入VB,VS等都可以编辑制作exe文件。
不过要想真的做一个专业的pc桌面程序是要花大工夫学很长时间的。
如果EXE文件是用VB编译的,用反编译软件可以实现查看编辑。
不过这些都是很专业的。
一般人就使用这些exe文件了。
如果你想做一个程序员,那这些东西都回学到的。
有没有VB反编译程序
1、到目前为止,可以说"没有"真正有意义的反编译程序。
2、网上虽然有一些称vb反编译的程序,但大多只能反编回一些窗体;对于代码基本上就没有可用性,或根本没有代码。
3、反编译一般指反向编译,是计算机软件的反向工程(Reverse engineering)也称为计算机软件还原工程,是指通过对他人软件的目标程序(可执行程序)进行“逆向分析、研究”工作,以推导出他人的软件产品所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素,某些特定情况下可能推导出源代码。
反编译作为自己开发软件时的参考,或者直接用于自己的软件产品中。
反编译是一项艰巨而复杂工作。
如何反编译android应用并重新打包
一.看android的源代码
1)将Apkd.apk 用zip解压后,出现了一个classes.dex文件
2014/02/19 19:42
.
2014/02/19 19:42
..
2014/02/19 15:35 1,656 AndroidManifest.xml
2014/02/19 15:35 687,024 classes.dex
2014/02/19 15:49
META-INF
2014/02/19 15:49
res
2014/02/19 15:35 2,200 resources.arsc
2)进入到dex2jar目录中,运行情况如下:
D:developer ools est_apkdex2jar-0.0.9.15>dex2jar.bat "..Apkd(d2j)classes.d
ex"
this cmd is deprecated, use the d2j-dex2jar if possible
dex2jar version: translator-0.0.9.15
dex2jar ..Apkd(d2j)classes.dex -> ..Apkd(d2j)classes_dex2jar.jar
Done.
在apk所在的目录会出现 classes_dex2jar.jar 文件。
3) 用JD-GUI对jar包进行查看,可以查看源文件
二.反编译apk
1.在 下载 APKTOOL中的三个文件(aapt.exe、apktool.bat、apktool.jar)解压缩到你的Windows安装目录下,以方便使用Dos命令.
2012/12/06 11:44 854,016 aapt.exe
2014/02/19 17:15 277,372 Apkd.apk //示例用 apk文件
2012/12/23 23:39 92 apktool.bat
2013/02/03 02:37 2,655,843 apktool.jar
2.进入到apktool.bat所在的目录,运行:
apktool d Apkd.apk decode_dir
反编译后,decode_dir目录下的内容如下:
2014/02/19 17:16 716 AndroidManifest.xml
2014/02/19 17:16 237 apktool.yml
2014/02/19 17:18
build
2014/02/19 17:16
res
2014/02/19 17:16
smali
此时我可以查看原文件AndroidManifest.xml了,也是查看smali源文件(是用smali语言写的,可以对照java看)。
三.APKTOOL的使用
1).decode
该命令用于进行反编译apk文件,一般用法为
apktool d
代表了要反编译的apk文件的路径,最好写绝对路径,比如C:MusicPlayer.apk
代表了反编译后的文件的存储位置,比如C:MusicPlayer
如果你给定的已经存在,那么输入完该命令后会提示你,并且无法执行,需要你重新修改命令加入-f指令
apktool d –f
这样就会强行覆盖已经存在的文件
2).build
该命令用于编译修改好的文件,一般用法为
apktool b
这里的
就是刚才你反编译时输入的
(如C:MusicPlayer),输入这行命令后,如果一切正常,你会发现C:MusicPlayer内多了2个文件夹build和dist,其中分别存储着编译过程中逐个编译的文件以及最终打包的apk文件。
3).install-framework
该命令用于为APKTool安装特定的framework-res.apk文件,以方便进行反编译一些与ROM相互依赖的APK文件。
具体情况请看常见问题
四.smali与java源码对照,并做出相应的修改
java源代码:
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.*;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView a = (TextView)this.findViewById(R.id.test) ;
a.setText("raoliang");
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
对应的smali源代码:
.class public Lali/text/apkd/MainActivity;
.super Landroid/app/Activity;
.source "MainActivity.java"
# direct methods
.method public constructor ()V
.locals 0
.prologue
.line 8
invoke-direct {p0}, Landroid/app/Activity;->()V
return-void
.end method
# virtual methods
.method protected onCreate(Landroid/os/Bundle;)V
.locals 2
.parameter "savedInstanceState"
.prologue
.line 12
invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V
.line 13
const/high16 v1, 0x7f03
invoke-virtual {p0, v1}, Lali/text/apkd/MainActivity;->setContentView(I)V
.line 14
const/high16 v1, 0x7f08
invoke-virtual {p0, v1}, Lali/text/apkd/MainActivity;->findViewById(I)Landroid/view/View;
move-result-object v0
check-cast v0, Landroid/widget/TextView;
.line 15
.local v0, a:Landroid/widget/TextView;
const-string v1, "raoliang"
invoke-virtual {v0, v1}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
.line 16
return-void
.end method
.method public onCreateOptionsMenu(Landroid/view/Menu;)Z
.locals 2
.parameter "menu"
.prologue
.line 21
invoke-virtual {p0}, Lali/text/apkd/MainActivity;->getMenuInflater()Landroid/view/MenuInflater;
move-result-object v0
const/high16 v1, 0x7f07
invoke-virtual {v0, v1, p1}, Landroid/view/MenuInflater;->inflate(ILandroid/view/Menu;)V
.line 22
const/4 v0, 0x1
return v0
.end method
通过对比可以看到,常量是没有必变的,可以根据的smali的语法,进行相应的修改
五.3、打包、签名和安装修改后的apk
修改完了,就可以打包回apk了。
执行以下命令:
apktool b decode_dir
在mygame目录下的dist在会看到打包好的apk。
当然,现在一般是无法安装的,因为apk还没有签名。
下面就来签名。
签名需要keystore文件,我已经有专用的keystore了,如果还没有,请参阅这里进行生成。
执行以下命令为重新编译的my_game.apk签名:
jarsigner -verbose -keystore demo.keystore Apkd.apk demo.keystore
最后,在安装到手机前,需要把手机中的已有版本先卸载,因为如果签名不同,是不能覆盖安装的,会提示“应用程序未安装”错误。
完整的运行情况如下:
D:developer ools est_apk
ewdecodedist>keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore
输入keystore密码:
再次输入新密码:
您的名字与姓氏是什么?
[Unknown]: rao
您的组织单位名称是什么?
[Unknown]: rao
您的组织名称是什么?
[Unknown]:
您所在的城市或区域名称是什么?
[Unknown]:
您所在的州或省份名称是什么?
[Unknown]:
该单位的两字母国家代码是什么
[Unknown]:
CN=rao, OU=rao, O=Unknown, L=Unknown, ST=Unknown, C=Unknown 正确吗?
[否]: y
输入的主密码
(如果和 keystore 密码相同,按回车):
D:developer ools est_apk
ewdecodedist>jarsigner -verbose -keystore demo.keystore Apkd.apk demo.keystore
输入密钥库的口令短语:
正在添加: META-INF/MANIFEST.MF
正在添加: META-INF/DEMO_KEY.SF
正在添加: META-INF/DEMO_KEY.RSA
正在签名: res/drawable-hdpi/ic_launcher.png
正在签名: res/drawable-mdpi/ic_launcher.png
正在签名: res/drawable-xhdpi/ic_launcher.png
正在签名: res/drawable-xxhdpi/ic_launcher.png
正在签名: res/layout/activity_main.xml
正在签名: res/menu/main.xml
正在签名: AndroidManifest.xml
正在签名: classes.dex
正在签名: resources.arsc
D:developer ools est_apk
ewdecodedist>
到此为止,修改后的apk可以正常的安装了,不过,在安装之前,必须要先卸载以前的apk,不能直接替换(因为签名不一样)怎样用将一个exe件件进行反编译
看什么语言编写的了。
不好一概而论。
如果是C/VC写的,没办法反编译。
如果是VFP,用UnFox 如果是Java, 用cavaj 如果是VB,..去找找,忘记名字了,有专用工具。
你得先能判断出来大概是什么语言编写的。
今天看到一个网友从原来虚拟主机准备转移至服务器管理自己的业务。这里问到虚拟主机和服务器到底有什么不同,需要用到哪些工具软件。那准备在下班之间稍微摸鱼一下整理我们服务器安装环境和运维管理中常见需要用到的软件工具推荐。第一、系统镜像软件一般来说,我们云服务器或者独立服务器都是有自带镜像的。我们只需要选择镜像安装就可以,比如有 Windows和Linux。但是有些时候我们可能需要自定义镜像的高级玩法,这...
傲游主机商我们可能很多人并不陌生,实际上这个商家早年也就是个人主机商,传说是有几个个人投资创办的,不过能坚持到现在也算不错,毕竟有早年的用户积累正常情况上还是能延续的。如果是新服务商这几年确实不是特别容易,问到几个老牌的个人服务商很多都是早年的用户积累客户群。傲游主机目前有提供XEN和KVM架构的云服务器,不少还是亚洲CN2优化节点,目前数据中心包括中国香港、韩国、德国、荷兰和美国等多个地区的CN...
官方网站:点击访问青果云官方网站活动方案:—————————–活动规则—————————1、选购活动产品并下单(先不要支付)2、联系我司在线客服修改价格或领取赠送时间3、确认价格已按活动政策修改正确后,支付订单,到此产品开设成功4、本活动产品可以升级,升级所需费用按产品原价计算若发生退款,按资源实际使用情况折算为产品原价再退还剩余余额! 美国洛杉矶CN2_GIACPU内存系统盘流量宽带i...
反编译软件为你推荐
鹮如何区分鹭类,鹤类,鹮类,鹳win8中文Win8中文版汉化包安装教程有哪些?肥乡二手房肥乡六期小区产权多少年大家有知道的吗谢谢有文字记载的王朝最早的文字记载什么朝代中国音乐制作人排名作曲家的中国知名作曲家药监局官网查询如何利用国家食品药品监督管理总局官网查询一种药品信息、辨别药品真伪和查询网上药店的资质?立刻有“立刻有”拼音怎么拼? 玩的什么套路?苹果固件苹果刷机时要选择固件该怎么整印度女星印度最出名的影星有哪几位?xinxinmanhua新新漫画网站怎么了
in域名注册 国外主机 bluevm 秒解服务器 云全民 世界测速 如何用qq邮箱发邮件 息壤代理 微软服务器操作系统 免费私人服务器 银盘服务 杭州电信宽带优惠 中国联通宽带测速 月付空间 asp.net虚拟主机 easypanel linuxvi命令 赵荣 宿主机 主机声音大 更多