Saya menulis aplikasi C # untuk klien beberapa tahun yang lalu, tetapi saya tidak lagi memiliki kode sumber. Semua yang saya miliki adalah EXE yang saya gunakan pada PC klien. Apakah ada cara saya dapat menghasilkan kode sumber C # dari EXE?
Saya menulis aplikasi C # untuk klien beberapa tahun yang lalu, tetapi saya tidak lagi memiliki kode sumber. Semua yang saya miliki adalah EXE yang saya gunakan pada PC klien. Apakah ada cara saya dapat menghasilkan kode sumber C # dari EXE?
Jawaban:
Reflektor dan add-in FileDisassembler .
Reflektor akan memungkinkan untuk melihat kode sumber. FileDisassembler akan memungkinkan Anda untuk mengubahnya menjadi solusi VS.
Ketika Red Gate mengatakan tidak akan ada lagi versi gratis .Net Reflector, saya mulai menggunakan ILSpy dan JustDecompile milik Telerik . Saya telah menemukan ILSpy untuk mendekompilasi lebih akurat daripada JustDecompile (yang masih dalam Beta). Red Gate telah mengubah keputusan mereka dan masih memiliki versi gratis .Net Reflector, tapi sekarang saya suka ILSpy.
Dari situs web ILSpy ( https://github.com/icsharpcode/ILSpy/ ):
ILSpy adalah open source browser browser dan dekompiler.
Memperbarui:
15 April 2012, ILSpy 2.0 dirilis. Fitur baru dibandingkan dengan versi 1.0:
Memperbarui:
Reflector tidak lagi gratis secara umum, tetapi mereka menawarkannya secara gratis untuk pengembang open source: http://reflectorblog.red-gate.com/2013/07/open-source/
Tetapi beberapa perusahaan seperti DevExtras dan JetBrains telah menciptakan alternatif gratis:
Reflektor dan add-in File Disassembler dari Denis Bauer. Ini sebenarnya menghasilkan proyek sumber dari majelis, di mana Reflector sendiri hanya menampilkan sumber yang dibongkar.
TAMBAH: Favorit saya yang terbaru adalah dotPeek JetBrains .
Telerik JustDecompile gratis dan memiliki fitur untuk membuat proyek dari majelis .NET.
Saya terkejut tidak ada yang menyebut - nyebut ildasme Microsoft . Mungkin tidak secantik ILSpy atau Reflector, tetapi ia hadir dengan Visual Studio sehingga banyak pengembang sudah memilikinya.
Untuk menjalankannya (dengan asumsi VS 2013, harus serupa untuk versi lain):
Sekarang Anda dapat menavigasi struktur DLL. Klik dua kali pada anggota kelas untuk melihat IL. Gunakan File> Dump untuk mengekspor IL ke file.
Anda ingin reflektor .