反編譯怎麼裝
⑴ 反編譯工具reflector怎麼用
首先,下載並安裝Reflector,安裝完成後,會看到如下的界面。也有免安裝版可供選擇。
運行Reflector軟體,會跳轉到如圖所示的界面。
選擇文件菜單中的「打開程序集」,這表示你將要反編譯的程序,如圖所示的紅色框。
選擇你需要反編譯的exe程序,如圖所示。選擇好後點擊確定,如圖所示。
在左側界面,你會看到已選擇的文件,如圖所示的紅色框。
點擊郵件exe程序,然後選擇「導出源代碼」,這表示開始反編譯了,如圖所示。
選擇存儲源碼的路徑,如圖所示。
最後點擊開始,即可得到反編譯源碼,如圖所示。
使用Reflector進行反編譯,可以讓你深入了解程序的內部結構,這對於軟體逆向工程、調試和分析是非常有用的。
在反編譯過程中,需要注意保護版權和遵守相關法律法規,合理合法地使用反編譯工具。
同時,對於那些希望通過學習和研究來提高自己編程技能的人來說,反編譯也是一個非常好的學習工具。
值得注意的是,反編譯可能不會得到所有源代碼,特別是對於使用了混淆技術的程序,反編譯結果可能較為復雜和難以理解。
盡管如此,通過反編譯,你可以了解程序的架構、邏輯和實現細節,這對提升編程水平和解決實際問題非常有幫助。
總之,Reflector是一款功能強大的反編譯工具,掌握其使用方法,可以讓你更深入地了解程序的本質。
⑵ eclipse怎樣進行反編譯
在Eclipse中進行反編譯,首先需要下載並安裝Jadclipse插件。根據Eclipse版本的不同,可以選擇不同的Jadclipse版本,例如,對於Eclipse 3.1M6及以上版本,可以選擇下載jadclipse_3.1.0.jar;對於Eclipse 3.2M3和3.2M4,建議使用jadclipse_3.2.0.jar;而對於Eclipse 3.2M5以上版本,則推薦使用jadclipse_3.2.2.jar。此外,還需要下載Jad反編譯工具,從http://www.kps.com/jad.Html#download獲取,下載後解壓jad.exe,並將其復制到%Java_HOME%BIN目錄下。
安裝Jadclipse插件的方法有兩種。一種是直接將jadclipse_3.1.0.jar復制到%ECLIPSE_HOME%plugins目錄;另一種是使用link方式,創建E:eclipse3.1pluginsjadclipse3.1.0eclipseplugins的目錄結構,將jadclipse_3.1.0.jar放入plugins目錄,並在%ECLIPSE_HOME%links目錄下創建jadclipse3.1.0.link文件,內容為:path=E:\eclipse3.1plugins\jadclipse3.1.0。啟動Eclipse後,打開Window->Preferences->Java->JadClipse,確認插件安裝版本與Eclipse版本匹配。
設置反編譯參數時,需在Window->Preferences->Java->JadClipse中進行。Path to decompiler設置jad.exe的全路徑名,例如:%JAVA_HOME%binjad.exe;Directory for temporary files設置臨時文件的存放路徑。其他如Debug、Directives、Formatting、Misc等目錄中的參數設置可根據需求自行調整。
安裝完成後,Eclipse將自動將JadClipse Class File Viewer設置為class文件的默認打開方式。如需更改,可進入Eclipse的Windows->Perference->General->Editors->File Associations,將「*.class」文件關聯至「JadClipse Class File Viewer」。此後,雙擊class文件,Eclipse將自動進行反編譯。
值得注意的是,對於存在源代碼的類,JadClipse不會強制反編譯,依然會使用Eclipse自帶的Class File Viewer查看class文件。這一設置避免了不必要的反編譯過程,有助於提高工作效率。
⑶ apk反編譯工具Apktool的安裝與使用教程
APKTool是GOOGLE提供的APK編譯工具,需要JAVA運行環境,推薦使用JDK1.6或者JDK1.7。 下面就一起來看看詳情了解一下該怎麼安裝使用吧軟體名稱:apktool(apk反編譯工具) v1.41 中文綠色免費版軟體大小:3.32MB更新時間:2014-01-04
如果你想對APK文件進行修改,那麼就不可避免的要使用到APKTool。論壇里有很多關於ROM美化的帖子都需要自己動手修改APK文件,比如修改framework-res.apk、systemUI.apk等等。
相信各位有不少人看了後都想親自來修改一番,但是結果卻是遇到了各式各樣的錯誤卻無法進行改正,甚至都不知道自己錯在哪裡。
一.APKTOOL使用環境配置
1.安裝JAVA並設置環境變數。
下載安裝都很簡單,關鍵是安裝完後還需要親自設置環境變數以方便其他程序能夠條用JAVA。
以WIN7為例,在桌面上右鍵點擊計算機——>屬性——>高級系統設置——>環境變數——>在下邊的系統變數里新建一個變數,變數名為JAVA_HOME,值為JAVA的安裝路徑,比如我的是H:\ProgramFiles\Java\jdk1.6.0_26
二.APKTool的安裝
1.其實這個談不上安裝,不過如果你願意的話可以把下載到的APKTOOL中的三個文件(aapt.exe、apktool.bat、apktool.jar)解壓縮到你的Windows安裝目錄下,以方便使用Dos命令.
2.可能有些人下載的APKTOOL里有個安裝的bat文件,並且有另外兩個方便使用的bat文件,在這里我不推薦大家使用這些bat文件,雖然使用起來很方便(其實我並不覺得方便),但是如果出現錯誤不方便查看。
三.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文件。具體情況請看常見問題
四.常見問題
1.關於安裝和管理framework文件
以下大部分其實是翻譯自http://code.google.com/p/android-apktool/wiki/FrameworkFiles
一般來說,你在使用apktool進行反編譯前不需要做其他的事情,然而由於有的廠商,如HTC,三星等,他們定製了framework文件並且在他們的系統應用中使用了這些文件,這時,為了能正常的反編譯這些apk文件,你就必須從你的設備中拷貝出framework文件並且安裝到apktool中。
舉一個例子,比如你想反編譯HTCHero這款手機中的HtcContacts.apk,當你嘗試反編譯的時候,你會得到以下錯誤信息。
1.$ apktool d HtcContacts.apk
2.I: Loading resource table...
3.I: Decoding resources...
4.I: Loading resource table from file: /home/brutall/apktool/framework/1.apk
5.W: Could not decode attr value, using undecoded value instead: ns=android, name=drawable, value=0x02020542
6....
7.W: Could not decode attr value, using undecoded value instead: ns=android, name=icon, value=0x02020520
8.Can't find framework resources for package of id: 2. You must install proper framework files, see project website for more info.
復制代碼
這就是在通知你必須先安裝HTC定製的framework文件,事實上在修改一些三星的系統應用時也是如此。
以三星的設備來舉例,你需要復制兩個framework文件來進行安裝,framework-res.apk和tzframework-res.apk,一般來說,這兩個文件在手機中的位置應該是system\framework\
使用以下代碼進行安裝
apktool if C:\framework-res.apk
apktool if C:\tzframework-res.apk
這里假設2個文件都放在C盤根目錄
2.直接用build編譯後在dist中找到的apk文件無法使用
其實這個問題我也不是特別理解,目前知道的就是,APK文件雖然本質是個zip文件,但是事實上zip包中的文件是按照兩種方式壓縮的,即XML文件進行deflate壓縮,其他文件不進行壓縮(使用store存儲),而直接編譯得到的APK文件對任何的文件都進行了deflate壓縮,因此你會發現編譯得到的文件比原文件小好多。
同樣的,當你使用build文件夾中的文件替換原apk文件中的資源時,請務必確認是使用store存儲還是deflate壓縮
3.其他錯誤
其實在編譯過程中會遇到很多其他的問題,大多數是由於刪除、修改、添加了資源後,沒有對應的修改res\values\public.xml文件而造成的,這里我給大家說下修改的原則:
第一,public.xml文件中的資源不能重復定義。
第二,public.xml文件中的任意兩個資源的ID不能一樣
第三,public.xml文件中定義的資源必須能找到該文件(如果你刪除了一些文件,必須要對應的刪除public.xml中的該行)
第四,public.xml文件中盡可能全面(如果你添加了某資源,最好確保在public.xml中也添加)
第五,public.xml文件中的資源的ID盡可能連續(當你為添加的文件添加聲明時,賦予的ID盡可能是連續的)