คำเตือน อย่าทุจริต เอา decompiler ไปใช้เพื่อลอกงานของคนอื่นๆ นอกจากจะผิดจรรยาบรรณแล้ว อาจโดนลงโทษตัดคะแนนได้
โปรแกรม decompiler ส่วนมากจะใช้ engine ของ JAD หมายความว่า จิงๆ แล้วโปรแกรม decompiler ส่วนมากจะทำเฉพาะหน้าตาแบบ windows ข้างหลังจะใช้โปรแกรม้เล็กๆ ที่รันบน command prompt (DOS) ชื่อว่า JAD
เราสามารถ decompile ด้วย JAD ตรงๆ ก็ได้ ทำนองว่าเรียกใช้ espresso ตรงๆ แทนที่จะไปทำงานบนโปรแกรมบน windows ที่หลายๆ คนมีความคิดจะเขียนเป็น project วิชา progmeth ซึ่งข้างหลังโปรแกรมจะไปเรียก espresso อีกที
เครื่องทุกเครื่องที่เคยลง JLab จะมี JAD ติดมาด้วย (ถ้าไม่รู้ก็จะได้รู้แล้ว) เครื่องคอมศูนย์คอมก็มี decompiler ตัวนี้อยู่ด้วย ไม่ต้องไปลงให้เสียเวลา (นะจ๊ะ)
เข้าไปที่ C:\Program Files\JLab\tools (ถ้าลงไว้แบบมาตรฐานทั่วไปที่ %program files% นะ) มองหา JAD จากนั้นแนะนำให้ทำงานคล้ายๆ กับ espresso เช่น
copy JAD ไปที่ C:\ (ในศูนย์คอมให้เอาไปไว้ที่ c:\temp - รู้สึกว่าจะเขียนลงไปที่ C:\ ไม่ได้ แต่เขียนที่ C:\temp ได้ และไฟล์ใน temp จะไม่โดนลบเมื่อปิดเครื่องๆ นั้น เว้นแต่ว่า admin มาสั่งลบ)
เปิด RUN (Windows LOGO KEY + R) พิมพ์ cmd กด enter เข้าไปที่ c:\temp
จากนั้นกลับมาที่หน้าจอวินโดวส์ copy ไฟล์ class ที่ต้องการ decompile ไปที่ c:\ (หรือ c:\temp ที่เดียวกะ JAD)
จากนั้น กลับมาที่ command prompt
พิมพ์ jad *.class กด enter ถ้า decompile ไม่ได้ หรือได้ไม่ครบจะมีข้อความแจ้ง error จะได้ไฟล์ที่ decompile แล้ว มีนามสกุลเป็น jad
พิมพ์ copy *.jad *.java เพื่อเปลี่ยนนามสกุลไฟล์จาก jad เป็น java
พิมพ์ del *.jad เพื่อลบไฟล์นามสกุล jad ทิ้งเหลือแค่ *.java
ได้ source code แล้ว!!
ทั้งหมดข้างล่างต่อไปนี้เป็นผลจากการ research ส่วนตัว
ในปัจจุบัน ไม่มี decompiler ใดในโลกนี้ ที่สามารถ decompile ไฟล์ที่มาจาก Javadoc ได้ - เพราะเราลองหาแล้ว เจอแค่แนวคิดเท่านั้น - ได้แค่ source code อย่างข้างล่างเนี่ยแหละ
คำเตือน อย่าทุจริต เอา decompiler ไปใช้เพื่อลอกงานของคนอื่นๆ นอกจากจะผิดจรรยาบรรณแล้ว อาจโดนลงโทษตัดคะแนนได้ ถ้าจะโหลด JAD เวอร์ชั่นใหม่กว่า (ซึ่งอาจช่วย decompile บาง class ที่เคย decompile ไม่ได้) ก็โหลดที่นี่ได้
๋Jad 1.5.8g
Decompiler ที่ใช้ง่ายๆ เป็น GUI - decompiler อันนี้รันได้แม้เครื่องที่ไม่ได้ลง JRE ไว้ - ใช้ JAD รันข้างหลัง
Cavaj Java Decompiler V1.11 - ให้โหลด JAD เวอร์ชั่นใหม่ข้างบนลงไปแทนที่ JAD ที่ติดมากับ Cavaj Java Decompiler ด้วยก็ดี
Cavaj Java Decompiler V1.11 แบบไม่ต้อง install (เพื่อจะได้ copy ไปลงได้เลย)
สามตัวข้างล่างนี้ไม่แนะนำให้ใช้ มันทำงานได้ไม่สมบูรณ์ บางตัว decompile ไม่ได้เลยก็มี
Decompiler ที่ใช้ java GUI - ใช้ JAD รันข้างหลัง
JCavaj Java Decompiler v1.00.zip
2 ตัวนี้เป็น plugin ของ Eclipse ช่วยทำให้เปิดไฟล์ class ได้ตรงๆ บนหน้าจอ eclipse - แต่เท่าที่ลองใช้ มันทำงานสู้ Eclipse 3.2 ซึ่งมี java class viewer ในตัวไม่ได้เลย
JadClipse 3.2 - สำหรับ Eclipse 3.2
Jode Eclipse Plugin - ยังใช้กับ eclipse 3.2 ได้ไม่สมบูรณ์
DISCLAIMER: This page is a developing article. Files linked from this page are only temporary and will be removed soon. The author does not intend to redistribute those files. They are linked only for a short moment and will be removed after this article is concluded. For educational purposes only, not for any kind of commercial intention.
|