ソースコードなしで.NETやUnityのアセンブリをデバッグ・編集できる、dnSpyの非公式継続プロジェクト。
icsharpcode/ILSpy
コンパイル済みの.NETバイナリを読みやすいC#に戻す、オープンソースのクロスプラットフォーム.NETアセンブリブラウザー兼逆コンパイラー。
代替できる製品:dotPeek
- スター
- 26,973
- フォーク
- 3,811
- 未解決の Issue
- 160
- 最終コミット
- 19 時間前
これは何?
ILSpyは、.NETアセンブリブラウザー兼逆コンパイラーです。コンパイル済みの.NETアセンブリを開き、C#ソースコードを復元できるため、開発者はサードパーティ製ライブラリや、ソースコードが入手できなくなった古いバイナリを調査できます。デスクトップUIはAvaloniaで構築されており、Windows、Linux、macOSで動作します。
メインのデスクトップアプリに加え、同じ逆コンパイラーエンジンをコマンドラインツール(ilspycmd)、dotnet tool、PowerShell cmdlet、自分のプロジェクトに組み込むためのNuGetパッケージ、Visual StudioおよびVisual Studio Codeの拡張機能としても利用できます。Visual Studioでは、F12による外部コードへの移動に使われます。
UIでは、プロジェクト全体の逆コンパイル、型やメンバーの検索、型間のハイパーリンクによる移動、基底型・派生型の参照、メタデータの閲覧ができます。また、NuGetフィードからアセンブリを開けるほか、.NET CoreのReadyToRunバイナリにも対応しており、プラグインで機能を拡張できます。
主な機能
- 01.NETアセンブリをプロジェクト全体の出力に対応した形でC#に逆コンパイル
- 02Windows、Linux、macOSで動作するクロスプラットフォームのデスクトップUI
- 03型、メソッド、プロパティを検索し、移動やブックマークを利用
- 04アセンブリのメタデータ閲覧と基底型・派生型の参照
- 05.NET CoreのReadyToRunバイナリとBAMLからXAMLへの変換に対応
- 06プラグインシステムと、Visual Studio、VS Code、コマンドラインとの連携
ユースケース
- ソースコードを入手できないサードパーティ製ライブラリの動作を調査する
- ソースを失ったレガシーな.NETバイナリからロジックを復元する
- Visual StudioでF12を使い、外部コードをたどってデバッグする
- ilspycmdを使ってCIや自動化で一括逆コンパイルをスクリプト化する
クイックスタート
- 1
リポジトリをクローンし、テスト用サブモジュールを取得する
git submodule update --init --recursive - 2
クロスプラットフォーム対応の Avalonia デスクトップUIをビルドする
dotnet build ILSpy.Desktop.slnf - 3
ILSpy デスクトップUIを実行する
dotnet run --project ILSpy
使う前に知っておきたいこと
- ビルドには .NET 10.0 SDK が必要で、テストには .NET 11.0 SDK が必要です。
- 実行中のプロセスや GAC から開く機能など、Windows のすべての機能を利用できるのは Windows のみです。
収録されている特集
トピック
よくある質問
- ILSpy とは?
- コンパイル済みの.NETバイナリを読みやすいC#に戻す、オープンソースのクロスプラットフォーム.NETアセンブリブラウザー兼逆コンパイラー。 ILSpyは、.NETアセンブリブラウザー兼逆コンパイラーです。コンパイル済みの.NETアセンブリを開き、C#ソースコードを復元できるため、開発者はサードパーティ製ライブラリや、ソースコードが入手できなくなった古いバイナリを調査できます。デスクトップUIはAvaloniaで構築されており、Windows、Linux、macOSで動作します。
- ILSpy は無料で使えますか?ライセンスは?
- ILSpy は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- ILSpy は今もメンテナンスされていますか?
- 活発にメンテナンス中。ILSpy の最終コミットは 2026年11月6日 です。
- ILSpy は何に使えますか?
- ソースコードを入手できないサードパーティ製ライブラリの動作を調査する ソースを失ったレガシーな.NETバイナリからロジックを復元する Visual StudioでF12を使い、外部コードをたどってデバッグする ilspycmdを使ってCIや自動化で一括逆コンパイルをスクリプト化する
- ILSpy のインストール方法は?
- リポジトリをクローンし、テスト用サブモジュールを取得する: git submodule update --init --recursive クロスプラットフォーム対応の Avalonia デスクトップUIをビルドする: dotnet build ILSpy.Desktop.slnf ILSpy デスクトップUIを実行する: dotnet run --project ILSpy
- ILSpy はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/icsharpcode/ILSpy
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
EXE、DLL、SYS、静的ライブラリ、COFFオブジェクト、ELFファイルに対応し、逆アセンブルとデコンパイルも行えるWindows向けPEビューア・解析ツールです。
バイナリ、アプリ、ファームウェア、ファイル形式、プロトコルを対象とする、注釈付きの厳選リバースエンジニアリングツール・学習リソース集。
コミュニティ向けのオープンソースチャットプラットフォーム。チャンネル、音声・ビデオ通話、セルフホスト可能なフェデレーションを備え、.NETとBlazorで構築されています。
AndroidのDex、APKなどを読みやすいJavaソースコードに変換するCLIツールとGUI。