
ILSpy v10.1.1
Decompilador .NET com suporte para geração de PDB, ReadyToRun, Metadados (&mais) - multiplataforma!
ILSpy

O ILSpy é o navegador e decompilador de assemblies .NET de código aberto e multiplataforma. A interface de desktop roda em Windows, Linux e macOS (construída com Avalonia).
Download: última versão | última compilação de CI (master) | Microsoft Store (apenas versões RTM)
Frontends do Decompilador
Além da interface de desktop multiplataforma ILSpy (disponível para download nas Releases, veja também plugins), os seguintes outros frontends estão disponíveis:
- Visual Studio 2022/2026 incluem suporte a descompilação para F12 ativado por padrão (usando nossos mecanismos v8.2 e v9.1, respectivamente).
- Nossa extensão para Visual Studio 2022 marketplace (também funciona com VS 2026)
- Nossa extensão para Visual Studio Code repositório | marketplace | open-vsx
- Nossa ferramenta dotnet para Linux/Mac/Windows - confira ILSpyCmd neste repositório | instalação da ferramenta dotnet
- C# para Visual Studio Code também inclui suporte a descompilação. Para ativar, habilite a configuração "Enable Decompilation Support".
- No Visual Studio 2019, você precisa habilitar manualmente o suporte a F12. Vá em Tools / Options / Text Editor / C# / Advanced e marque "Enable navigation to decompiled source"
- Nossos pacotes NuGet ICSharpCode.Decompiler e ILSpyX para seus próprios projetos
- Nossos cmdlets do PowerShell para Linux/Mac/Windows neste repositório
Recursos
- Descompilação para C# (confira o estado do suporte à linguagem)
- Descompilação de projeto inteiro
- Abrir a partir do feed NuGet, abrir a partir de processo em execução, além de disco e GAC (somente Windows)
- Pesquisar por tipos/métodos/propriedades (saiba mais sobre as opções)
- Navegação por tipos/métodos/propriedades baseada em hiperlinks, marcadores
- Navegação por tipos base/derivados, histórico
- Explorador de metadados do assembly (passo a passo do recurso)
- Decompilador de BAML para XAML, suporte a !AvaloniaResources
- Suporte a binários ReadyToRun para .NET Core (veja o tutorial)
- Extensível via plugins
- Recursos adicionais em builds DEBUG (para os desenvolvedores)
Licença
O ILSpy é distribuído sob a Licença MIT. Consulte o documento About para detalhes, bem como os avisos de terceiros referentes às bibliotecas de código aberto incluídas.
Como compilar
Windows:
- Certifique-se de que o Windows PowerShell (pelo menos a versão) 5.0 ou o PowerShell 7+ esteja instalado.
- Clone o repositório do ILSpy usando o git.
- Execute
git submodule update --init --recursivepara baixar o submódulo ILSpy-Tests (usado por alguns casos de teste). - Instale o Visual Studio (versão documentada: 18.0/2026). Você precisa dos seguintes componentes de workload:
- A workload ".NET Desktop Development". Essa workload inclui o SDK do .NET Framework 4.8 e o pacote de direcionamento do .NET Framework 4.7.2, bem como o .NET 10.0 SDK (o ILSpy.csproj tem como alvo o .NET 10.0, mas também temos projetos net472). Nossos testes de unidade exigem o .NET 11.0 SDK.
- A workload "Visual Studio extension development" (Observação: o ILSpy.VSExtensions.slnx é separado do ILSpy.sln e, portanto, essa workload é opcional)
- O Componente Individual "MSVC v143 - VS 2022 C++ x64/x86 build tools" (ou similar)
- O conjunto de ferramentas VC++ é opcional; se estiver presente, ele é usado para o
editbin.exemodificar o tamanho da pilha usado pelo ILSpy.exe de 1MB para 16MB, porque o decompilador faz uso intenso de recursão, onde tamanhos pequenos de pilha causam problemas em métodos muito complexos.
- O conjunto de ferramentas VC++ é opcional; se estiver presente, ele é usado para o
- Abra o ILSpy.sln no Visual Studio.
- A restauração de pacotes NuGet baixará automaticamente outras dependências
- Execute o projeto "ILSpy" para a interface do ILSpy
- Use o "Test Explorer" do Visual Studio para ver/executar os testes
- Se você tiver interesse apenas em um subconjunto específico do ILSpy, também pode usar
- ILSpy.Desktop.slnf: para a interface Avalonia multiplataforma e seus testes
- ILSpy.XPlat.slnf: para a CLI multiplataforma (ilspycmd) ou cmdlets do PowerShell
- ILSpy.VSExtensions.slnx: para as extensões do Visual Studio
Observação: o Visual Studio inclui uma versão do SDK do .NET gerenciada pelo instalador do Visual Studio - depois que você atualizar, ela também poderá ser atualizada. Observe que o ILSpy é compatível apenas com o SDK do .NET 11.0 e o Visual Studio se recusará a carregar alguns projetos da solução (e os testes de unidade falharão). Se esse problema ocorrer, instale manualmente o SDK do .NET 11.0 aqui.
Unix / Mac:
- Certifique-se de que o .NET 10.0 SDK (para execução) e o .NET 11.0 SDK (para testes) estejam instalados.
- Certifique-se de que o PowerShell esteja instalado (anteriormente conhecido como PowerShell Core)
- Clone o repositório usando o git.
- Execute
git submodule update --init --recursivepara baixar o submódulo ILSpy-Tests (usado por alguns casos de teste). - Use
dotnet build ILSpy.Desktop.slnfpara compilar a interface de desktop Avalonia multiplataforma; execute-a comdotnet run --project ILSpy. - Use
dotnet build ILSpy.XPlat.slnfpara compilar apenas a ferramenta de CLI (ilspycmd) e os cmdlets do PowerShell.
Como contribuir
- Reporte bugs
- Se quiser contribuir com um pull request, adicione https://github.com/icsharpcode/ILSpy/blob/master/BuildTools/pre-commit ao seu
.git/hookspara evitar enviar código com formatação incorreta. Usamos tabs e não espaços. O servidor de build executa o mesmo script, portanto qualquer pull request com formatação incorreta falhará.
Contribuidores atuais e passados: contribuidores.
Política de Privacidade do ILSpy
O ILSpy não coleta nenhuma informação pessoalmente identificável, nem envia arquivos do usuário para serviços de terceiros. O ILSpy não usa nenhum serviço de APM (Application Performance Management) para coletar telemetria ou métricas.