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