2011-01-16 7 views
19

¿Hay algún software para hacer esto? No encontré ninguna información útil en internet, así que estoy preguntando aquí.¿Cómo se extrae el código fuente de las clases de un archivo dll?

+0

El código fuente original que fue compilado? Simplemente no es posible. Algo funcionalmente equivalente? Sí. – delnan

+0

@delnan - ¿Qué quiere decir con funcionalmente equivalente? Lo siento nuevo en todo esto. No lo entendí Quiero extraer el código de las clases (escrito en C# .net) desde un archivo dll. el archivo dll tiene demasiadas clases. ¿Alguna forma de sacar ese código de ese dll? – ILoveMusic

+0

@ILoveMusic Puede extraer algo como el código original, pero no el exacto. Use el reflector .NET. –

Respuesta

19

No puede obtener el código exacto, pero puede obtener una versión descompilada de él.

La herramienta más popular (y la mejor) es Reflector, pero también hay otros decompiladores .Net (como Dis#). También puede descompilar IL utilizando ILDASM, que viene incluido con .Net Framework SDK Tools.

+6

En estos días probablemente debas usar ILSpy o dotPeek. Ambos son ** gratuitos ** y hacen un excelente trabajo. Creo que dotPeek es mejor debido a la navegación, y también lleva mucho tiempo para que ILSpy comience. Además, una vez decompilé un ensamblaje que estaba ofuscado (para herramientas de prueba) y el reflector .NET de Redgate se cuelga inmediatamente de la ofuscación más simple. ILSpy y dotPeek no tuvieron ningún problema y lo cargaron al instante. También resaltan la selección para que pueda manejar de alguna manera la ofuscación. – MasterMastic

12

Solo los idiomas administrados como c# y Java pueden descompilarse por completo. Puede ver el código fuente completo. Para Win32 dll no puede obtener el código de hechizo.

Para CSharp DLL Uso DotPeek becoz es gratuito y funciona igual que ReDgate .Net Compiler

divertirse.

0

Si usted quiere saber sólo algunos conceptos básicos dentro del conjunto dll, por ejemplo, Clases, método, etc., para cargarlos dinámicamente

puede utilizar la herramienta IL Disassembler proporcionada por Microsoft.

Generalmente se encuentra en: "C: \ Archivos de programa (x86) \ Microsoft SDKs \ Windows \ v7.0A \ Bin"

Cuestiones relacionadas