
Una librería para crear, leer y editar archivos PE y módulos .NET.
AsmResolver es una biblioteca para leer, modificar y reconstruir archivos Portable Executable (PE). Admite imágenes PE que se ejecutan de forma nativa en Windows, así como imágenes que contienen metadatos administrados (.NET).
AsmResolver se publica bajo la licencia MIT.
AsmResolver tiene muchas características. A continuación se muestra una lista no exhaustiva de lo más destacado:
System.Reflection.
Versiones estables:
Versiones nocturnas:
La solución se puede compilar con el SDK de .NET o con un IDE compatible con él (por ejemplo, Visual Studio y JetBrains Rider). Los paquetes principales tienen como objetivo las versiones LTS de varios runtimes de .NET (.NET Framework 3.5, .NET Standard 2.0, .NET Standard 2.1, .NET Core 3.1, .NET 6.0, .NET 8.0, .NET 9.0, .NET 10.0).
Para compilar el proyecto desde la línea de comandos, use:
$ dotnet build
Para ejecutar todas las pruebas, use:
$ dotnet test
Para que las pruebas se ejecuten correctamente, necesitará tener instaladas versiones adicionales del runtime de .NET (incluidas las versiones STS o las versiones declaradas EOL), ya que las pruebas unitarias verifican la lectura de binarios dirigidos a diversos runtimes de .NET.
Para que las pruebas se ejecuten correctamente en MacOS y Linux, también se espera que mono y wine estén instalados.
AsmResolver comenzó como un proyecto de pasatiempo, pero se ha convertido en un proyecto comunitario con varios colaboradores. Sin estas personas, ¡AsmResolver no estaría donde está hoy!
Un agradecimiento especial a todas las personas que contribuyeron directamente con commits de código o económicamente a través de patrocinadores de GitHub.
Un agradecimiento especial a las personas de @MonoMod por ayudar con la compatibilidad con .NET Framework 3.5.
Otro gran agradecimiento a todas las personas que sugirieron nuevas funciones, proporcionaron comentarios sobre el diseño de la API, realizaron pruebas exhaustivas y/o reportaron errores en el tablero de incidencias, por correo electrónico o mediante mensajes directos.
Si cree que ha sido subrepresentado en estos agradecimientos, no dude en ponerse en contacto.