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?
c#
.net
reverse-engineering
decompiling
MusiGenesis
sumber
sumber
Jawaban:
Reflektor dan add-in FileDisassembler .
Reflektor akan memungkinkan untuk melihat kode sumber. FileDisassembler akan memungkinkan Anda untuk mengubahnya menjadi solusi VS.
sumber
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.
Fitur ILSpy
Memperbarui:
15 April 2012, ILSpy 2.0 dirilis. Fitur baru dibandingkan dengan versi 1.0:
Memperbarui:
sumber
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:
DevExtras CodeReflect
JetBrains DotPeek
sumber
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 .
sumber
Telerik JustDecompile gratis dan memiliki fitur untuk membuat proyek dari majelis .NET.
sumber
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.
sumber
Anda ingin reflektor .
sumber