A. 有没有能反编译exe,并修改它的办法
W32Dasm是一个静态反汇编工具,也是破解人常用的工具之一,它也被比作破解人的屠龙刀。
W32Dasm10.0修改版是经Killer在W32Dasm8.93基础上修改的,修改后的W32Dasm功能更强大,能完美显示中文字符串及VB程序,内含16进制编辑器,破解修改软件更容易,真可谓是反汇编极品
B. 引用DotNetBarcode.dll生成二维码(有中文内容),解码后中文为乱码
DotNetBarcode是支持的日本字符啊,所以解出来是乱码。
反编译后,可以看到:
this.myFontName = "MS Pゴシック";
C. 如何汉化,精简软件
要汉化,精简软件,一般需要把APK进行反编译与再编译,这就需要几个工具。
1. 电脑上进行反编译的工具:
首先要有java环境。
你可以去官网下载JAVA的JDK包。。。
也可以去搜网上有些大侠整出来的一键配置JDK环境的傻瓜包。
我是用的安智论坛里WWNG出品的一键配置包的。
其次要升级一下JAVA到7.0, 6.0的虽然能用,但经常会出错,(可能大家都用7.0的编译了吧)
jre-7u5-windows-i586.exe
第三要有APKtool工具。
这个网上也到处都是。我还下载了一个小拽一键Apktool的工具。
有了这三个东东,基本上就可以了。
还有一个就是framework-res.apk,如果你要反编译systemui.apk之类的这个一定要有。这个就是你手机里面Framework目录下的一个APK。
因为反编译systemui.apk或framework-res.apk的时候你都得先加载这个。
一般的apk不需要先加载这个。
反编译步骤:
1. 加载框架。
2. 反编译你想改的APK。(这个要改的APK一般也放在你的Apktool目录下)
如果没有错误的话,一般就会在你的APKTool目录下生成一个以你的APK名字命名的文件夹。
里面大概有这两个目录,一个就是RES,一个就是SMALI。
一般要改的就是RES目录底下的东东。
汉化, 你可以将Values目录下的 Strings.xml 里面的条目一个一个汉化,然后用汉化后的替换掉 这个原始的Strings.xml,
也可以另建一个目录 Values-zh 或Values-zh-rcn,把汉化后的Strings.xml放进去。
(一般地, Values-zh 是放的香港版的汉化文件(繁体),而Values-zh-rcn 里放的是简体中文的汉化文件)
有时候,不光是Strings.xml , 还有 arrays.xml 这里也有需要汉化的地方,也是一样的,逐行汉化吧。
汉化完了你可以直接替换掉Values里的arrays.xml,也可以和Strings.xml一样放在新建的Values-zh 或Values-zh-rcn里。
精简,你可以把Values开头的所有目录,但不包含(V11,V19之类的),删除掉。只留下Values和Values-zh 或Values-zh-rcn就可以了。如果你追求更小的体积,那就直接把Values-zh 或Values-zh-rcn目录里的文件替换掉Values目录里的就行了!
如果不出问题,你就可以回编了!
回到一键Apktool里,按3, 回编。
回编正确完成后,就会在“回编apk生成目录”下生成一个修改后的APK
为防止回编时Smali出错导致程序无法运行,建议把原APK里的Classes.dex复制到修改后的APK里面。
最后,用APKSign.exe给修改后的APK签名,大功告成。
当然,这只是最基本的操作。 也许拿一个APK来改一改的时候会出现各种状况,让你搞不下去,那也等以后再说了。
2.手机上反编译的工具
APKTool 4.4.1 去搜一下吧。 官方下载应该是 Code.google.com/p/apktool ,但是非常难进这个页面。进去了也很难下载。不知道是不是因为天朝的原因。
这个在手机上用的。先安装Apktool.apk,然后运行它,它会提示你没有指定Apktool数据目录。找到你的Apktool目录,指定它。然后你就可以开始反编译了!
其实如果你只是要汉化或更简单地只是给软件改改名字,建议用MT文件管理器。
这玩意太强大了。打开Mt文件管理器,点击要修改的APK,弹出一个窗口,最左边是查看,最下面是XML翻译模式。最右边是签名,中间是安装。
点击 查看, 它就会把APK解压,然后你就可以看到 ckesses.dex 和 resources.arsc 了。
点击Rescources.arsc,就会出现Arsc编辑器,可以搜索字符串,还可以进入翻译模式。
点击翻译模式,里面就有Default目录和一些其它目录了。你只要对Default目录里的东东一条一条汉化就可以了!
汉化完成点保存,再保存,退出来之后就会有一个修改好的APK了,而原来那个会自动备份。
再点击那个修改好的APK,这次选择 签名 。 签名完成后会生成一个 原APK名_singed.apk 的新APK,
点击这个新APK,这次选择安装! 你就可以试试你修改的程序能不能正常运行了!
D. AndroidKillerV131正式版AndroidKillerV131正式版功能简介
大家好,关于Android Killer V1.3.1 正式版,Android Killer V1.3.1 正式版功能简介这个很多人还不知道,现在让我们一起来看看吧!
Android Killer最新版是一款功能强大的安卓APK反汇编工具,软件集APK反编译、APK打包、APK签名,编码互转,ADB通信等特色功能于一身,支持logcat日志输出,能够大大简化安卓应用和游戏修改过程中各类繁琐工作。
【功能特点】
1、可视化、全自动的反编译、编译、签名;支持批量编译APK。
2、以树形目录管理反编译出的Apk源码文件,浏览、打开、编辑、都可以统一在软件中实现,不同项目间可以自由切换,方便快捷。
3、自动识别图像资源,并提供该类资源的快捷替换功能,方便修改这类图片资源。
4、内置代码编辑器,支持包含,但不限于.samli、.xml、.html等各类格式文件的语法高亮显示,根据 smali文件格式的自动匹配相应语法;同时支持使用系统编辑器来编辑代码文件。
5、内置基于文件内容的单行或多行代码关键字搜索、可显示无穷多个搜索结果以标签的形式分门别类;可指定搜索范围,整个项目或在指定的文件或文件夹中搜索、大小写,编码类型;从此无需再借助其他工具,即可轻松的完成搜索任务。
6、内嵌Unicode、UTF8、ANSI编码互转工具,方便硬编码文字的检索以及相关汉化类修改。
7、内置Log等调试工具,方便应用进程、logcat输出查看等进阶操作,监测修改apk的运行状况,以助于分析和查找错误
8、内置ADB功能,包括使用ADB向设备,或模拟器安装、卸载、运行修改后的apk,进行测试,并可管理所连接设备的存储文件,包括系统以及用户文件
9、所有操作步骤、结果都会显示在日志窗口,方便查看。
10、默认支持记事本、计算器等小工具,开放设置接口可根据需要自定义外部工具,满足个性化需求。
【更新内容】
增加中英文版本切换,相关提示信息没有英化,有其他语言需求者在 "AK\cfgs\lang\" 路径下手动处理
增加自动识别java的bin目录
修复搜索批量替换后编译出错的BUG
增加 APK 签名工具
增加 APK 签名多项自定义添加
增加 APK 编译完后是否自动签名选项
增加 Apktool 管理器,用于 apktool 版本切换(支持反编译时参数定义)、框架安装和卸载等功能
增加 APK 安装管理器工具,移除上一版本的简单APK推送安装功能
增加 MD5 查看器工具
增加方法声明中只查看本地方法的功能,用于快速过滤查看 smali 对 so 中的方法调用
增加文本搜索工具
增加图片资源预览子目录功能
增加识别最新版的娜迦壳
增加搜索后批量替换功能
增加批量删除工程项
增加日志信息多选复制功能
增加 Androidkiller lua 脚本功能
更新 dex2jar 为最新版本
调整 APK 签名方式,去除从设置中选择签名,只保留签名的添加及编辑功能,改为从编译按钮的下拉菜单中选择
调整一些内部逻辑
调整搜索清空、管理项置顶
调整 apktool 默认为 ShakeApktool 版本
修复搜索中文字符时高亮位置错误
修复工程信息相关BUG
E. Java反编译工具的用法
反编译得出的代码,是JAVA文件在生成CLASS文件时,做过优化的代码。
所以跟你的原文件不一样(比如:注释全没有,中文全变成Unicode码,字符串连接全部用StringBuffer类来代替,自动增加else语句等等)。
所以,你要是想修改反编译出来的代码,可以:
1、将反编译出的代码复制到一个新建的类文件里
2、运行这个文件
3、根据错误提示,进行修改
以上是,我用过的方法。
F. 我反编译JAVA文件,有一些汉字信息就变成了\u9879 了
使用 jdk 自带的 native2ascii.exe 工具,在你的 jdk文件夹/bin 下能找到。
针对你的问题,在 cmd 窗口中执行下面的命令即可(需要将 jdk文件夹/bin 加入到 path 环境变量中):
native2ascii -reverse C:\abc.java c:\abc2.java
(这里abc.java表示你的含有 \uxxxx 字符的java文件;
c:\abc2.java 表示转后后的文件)
下面附上完整的 使用方法:
------------------------------
native2ascii用法解析
native2ascii是sun java sdk提供的一个工具。用来将别的文本类文件(比如
*.txt,*.ini,*.properties,*.java等等)编码转为Unicode编码。为什么要进行转码,
原因在于程序的国际化。
Java 编译器和其它 Java 工具只能处理含有 Latin-1 和/或 Unicode 编码(\udddd 记
号)字符的文件。native2ascii 将含有其它字符编码的文件转换成含 Latin-1 和/或
Unicode 编码字符的文件。
若省略 outputfile,则使用标准输出设备输出。此外,如果也省略 inputfile,则使用
标准输入设备输入。
用法:native2ascii [-reverse] [-encoding 编码] [输入文件 [输出文件]]
-[options]:表示命令开关,有两个选项可供选择
-reverse:
执行相反的操作:将含 Latin-1 和/或 Unicode 编码字符的文件转换成含本地编码字符
的文件,不指定编码情况下,将转为本地编码。
-encoding encoding_name
指定转换过程使用的编码名称。缺省的编码从系统属性 file.encoding 中得到。
encoding_name 字符串必须是下表第一栏所示的字符串。
[inputfile [outputfile]]
inputfile:表示输入文件全名。
outputfile:输出文件名。如果缺少此参数,将输出到控制台
-------------------------------------------------------------
8859_1 ISO 8859-1
8859_2 ISO 8859-2
8859_3 ISO 8859-3
8859_4 ISO 8859-4
8859_5 ISO 8859-5
8859_6 ISO 8859-6
8859_7 ISO 8859-7
8859_8 ISO 8859-8
8859_9 ISO 8859-9
Big5 Big5 码,繁体中文
CNS11643 CNS 11643,繁体中文
Cp037 美国、加拿大(两种语言,法语)、荷兰、葡萄牙、巴西、澳大利亚
Cp1006 IBM AIX 巴基斯坦(乌尔都语)
Cp1025 IBM 多语种西里尔语:保加利亚、波斯尼亚 黑塞哥维那、马其顿 (FYR)
Cp1026 IBM Latin-5,土耳其
Cp1046 IBM Open Edition US EBCDIC
Cp1097 IBM 伊朗(波斯语)/波斯
Cp1098 IBM 伊朗(波斯语)/波斯 (PC)
Cp1112 IBM 拉脱维亚,立陶宛
Cp1122 IBM 爱沙尼亚
Cp1123 IBM 乌克兰
Cp1124 IBM AIX 乌克兰
Cp1125 IBM 乌克兰 (PC)
Cp1250 Windows 东欧
Cp1251 Windows 斯拉夫语
Cp1252 Windows Latin-1
Cp1253 Windows 希腊
Cp1254 Windows 土耳其
Cp1255 Windows 希伯莱
Cp1256 Windows 阿拉伯
Cp1257 Windows 波罗的语
Cp1258 Windows 越南语
Cp1381 IBM OS/2, DOS 中华人民共和国 (PRC)
Cp1383 IBM AIX 中华人民共和国 (PRC)
Cp273 IBM 奥地利、德国
Cp277 IBM 丹麦、挪威
Cp278 IBM 芬兰、瑞典
Cp280 IBM 意大利
Cp284 IBM 加泰罗尼亚语/西班牙、拉丁美洲西班牙语
Cp285 IBM 英国、爱尔兰
Cp297 IBM 法国
Cp33722 IBM-eucJP - 日语 (5050 的超集)
Cp420 IBM 阿拉伯
Cp424 IBM 希伯莱
Cp437 MS-DOS 美国、澳大利亚、新西兰、南非
Cp500 EBCDIC 500V1
Cp737 PC 希腊
Cp775 PC 波罗的语
Cp838 IBM 泰国扩展 SBCS
Cp850 MS-DOS Latin-1
Cp852 MS-DOS Latin-2
Cp855 IBM 斯拉夫语
Cp857 IBM 土耳其语
Cp860 MS-DOS 葡萄牙语
Cp861 MS-DOS 冰岛语
Cp862 PC 希伯莱
Cp863 MS-DOS 加拿大法语
Cp864 PC 阿拉伯语
Cp865 MS-DOS 日尔曼语
Cp866 MS-DOS 俄语
Cp868 MS-DOS 巴基斯坦语
Cp869 IBM 现代希腊语
Cp870 IBM 多语种 Latin-2
Cp871 IBM 冰岛语
Cp874 IBM 泰国语
Cp875 IBM 希腊语
Cp918 IBM 巴基斯坦(乌尔都语)
Cp921 IBM 拉脱维亚、立陶宛(AIX, DOS)
Cp922 IBM 爱沙尼亚 (AIX, DOS)
Cp930 与 4370 UDC 混合的日语,5026 的超集
Cp933 与 1880 UDC 混合的韩文,5029 的超集
Cp935 与 1880 UDC 混合的简体中文主机,5031 的超集
Cp937 与 6204 UDC 混合的繁体中文,5033 的超集
Cp939 与 4370 UDC 混合的日语拉丁字母,5035 的超集
Cp942 日语 (OS/2),932 的超集
Cp948 OS/2 中文(台湾),938 超集
Cp949 PC 韩文
Cp950 PC 中文(香港、台湾)
Cp964 AIX 中文(台湾)
Cp970 AIX 韩文
EUCJIS JIS, EUC 编码、日语
GB2312 GB2312, EUC 编码、简体中文
GBK GBK, 简体中文
ISO2022CN ISO 2022 CN, 中文
ISO2022CN_CNS ISO-2022-CN 形式的 CNS 11643,繁体中文
ISO2022CN_GB ISO-2022-CN 形式的 GB 2312,简体中文
ISO2022KR ISO 2022 KR, 韩文
JIS JIS, 日语
JIS0208 JIS 0208, 日语
KOI8_R KOI8-R, 俄语
KSC5601 KS C 5601, 韩文
MS874 Windows 泰国语
MacArabic Macintosh 阿拉伯语
MacCentralEurope Macintosh Latin-2
MacCroatian Macintosh 克罗地亚语
MacCyrillic Macintosh 斯拉夫语
MacDingbat Macintosh Dingbat
MacGreek Macintosh 希腊语
MacHebrew Macintosh 希伯莱语
MacIceland Macintosh 冰岛语
MacRoman Macintosh 罗马语
MacRomania Macintosh 罗马尼亚语
MacSymbol Macintosh 符号
MacThai Macintosh 泰国语
MacTurkish Macintosh 土耳其语
MacUkraine Macintosh 乌克兰语
SJIS Shift-JIS, 日语
UTF8 UTF-8