
Una libreria per creare, leggere e modificare file PE e moduli .NET.
AsmResolver è una libreria per leggere, modificare e ricostruire file Portable Executable (PE). Supporta immagini PE eseguite nativamente su Windows, oltre a immagini contenenti metadati gestiti (.NET).
AsmResolver è rilasciato sotto licenza MIT.
AsmResolver ha molte funzionalità. Di seguito è riportato un elenco non esaustivo dei punti salienti:
System.Reflection.
Build stabili:
Build notturne (nightly):
La soluzione può essere compilata usando .NET SDK o un IDE compatibile (ad esempio Visual Studio e JetBrains Rider). I pacchetti principali hanno come target le versioni LTS di vari runtime .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).
Per compilare il progetto dalla riga di comando, usare:
$ dotnet build
Per eseguire tutti i test, usare:
$ dotnet test
Per eseguire correttamente i test, è necessario avere installate versioni aggiuntive del runtime .NET (incluse versioni STS o versioni dichiarate EOL), poiché gli unit test verificano la lettura di binari destinati a vari runtime .NET.
Per eseguire correttamente i test su MacOS e Linux, è prevista anche l'installazione di mono e wine.
AsmResolver è nato come progetto hobby, ma è cresciuto fino a diventare un progetto comunitario con vari contributori. Senza queste persone, AsmResolver non sarebbe dove è oggi!
Un ringraziamento speciale a tutte le persone che hanno contribuito direttamente con commit di codice o economicamente tramite GitHub sponsors.
Un ringraziamento speciale alle persone di @MonoMod per l'aiuto con la compatibilità con .NET Framework 3.5.
Un altro grande ringraziamento a tutte le persone che hanno suggerito nuove funzionalità, fornito feedback sulla progettazione dell'API, svolto test approfonditi e/o segnalato bug nella issue board, via e-mail o tramite messaggi diretti.
Se ritieni di essere stato sottorappresentato in questi riconoscimenti, non esitare a contattarci.