Cookie の使用について.本サイトでは、基本機能の提供に必要な必須 Cookie を使用しています。さらに、同意いただいた場合に限り、アクセス解析 Cookie を利用して利用状況を把握し、サービス改善に役立てます。詳しくは .
このツールは使いやすかったですか?
フィードバックは改善に役立ちます
.NETのEXE/DLLアセンブリを解析し、読みやすいC#コードの確認やプロジェクトファイルの書き出しができます。
ファイルを選択ここにファイルをドロップするか、クリックして選択
.exe · .dll
最大 2 MB
アップロード上限:ゲスト 2 MB、会員 4 MB、アドバンス 10 MB、プロ 40 MB。
概要
解決できる課題、処理の仕組み、データの範囲を確認できます。
.NETのDLLやEXEを受け取った場合、アセンブリ内のメタデータには通常、型名、継承関係、メソッドシグネチャ、フィールド、プロパティ、イベント、アセンブリの依存関係が記録されています。メソッド本体は中間言語の命令として保存されています。逆コンパイラは、これらの構造から読みやすいC#コードを生成し、プロジェクトファイルとしてZIPにまとめます。プログラム構造や呼び出し関係の把握、失われた実装の詳細確認に役立ちます。
コンパイル時に元の編集内容がすべて保持されるわけではありません。コメント、空白、ファイル構成、一部のローカル変数名は、通常アセンブリから復元できません。最適化されたビルドでは、式の統合、メソッドのインライン化、制御フローの見え方の変化が生じることもあります。生成されるコードは実行ロジックを再構築したものであり、元のリポジトリをそのまま再現したものではありません。
書き出されるディレクトリは、ソースコードの閲覧と確認を目的としています。元のソリューションに含まれていたビルド設定、依存関係のバージョン、署名キー、開発環境がすべて含まれるわけではありません。コードはC#で表示されるため、VB.NETやF#などのソース言語は元の構文では復元されません。対応するデバッグシンボルが付属している場合は、一部の名前や位置情報がより詳しく得られることがありますが、コンパイル前に失われた情報までは復元できません。
使い方
手順に沿って操作し、例を使って入力と結果を確認します。
解析する権限がある .dll または .exe ファイルを選択し、同じ拡張子を持つネイティブプログラムではなく、マネージド.NETアセンブリであることを確認します。
5 MB以下のファイルをアップロードして処理を開始します。サーバーは隔離された一時作業ディレクトリでアセンブリを解析するため、パソコンにJavaや.NETランタイムをインストールする必要はありません。
逆コンパイルが完了したら、結果一覧で名前空間、型、プロジェクトファイルを確認します。テキストをプレビューしてから、完全なZIPをダウンロードできます。
特定のクラスを調べる場合は、まず名前空間から対象を絞り込み、フィールド、コンストラクター、公開メソッド、関連する型を確認します。エラーや不足している型がある場合は、アセンブリ名と依存関係の手掛かりを記録し、追加ファイルが必要か判断してください。
最適化されたリリース版の場合は、単純な公開メソッドから比較を始めることをおすすめします。ローカル変数名や書式だけで動作を判断せず、呼び出し元、戻り値、例外分岐を含めてメソッド全体を確認してください。
活用例
仕事や日常の流れの中での活用方法を紹介します。
元のリポジトリを利用できない場合に、アセンブリから型の境界、公開インターフェース、主要な処理フローを確認し、互換性を保つための改修計画に役立てます。
サードパーティ製または社内コンポーネントが実際に公開しているメンバーを調べ、バージョンによる差異、例外の原因、呼び出し規約の特定に役立てます。
自社所有または調査許可を得たアセンブリを静的に確認し、判明した内容を実行ログ、設定、呼び出し経路と照合します。
こうした確認は調査の手掛かりとして有効ですが、完全性、信頼性、安全性を単独で判断する根拠にはなりません。
Q&A
よくある疑問や迷いやすい点をまとめて確認できます。
コンパイル時にコメント、空白、一部の変数名が失われ、最適化によって式や制御フローの表現も変化します。逆コンパイル結果は読みやすいロジックを再構築したもので、元のソースファイルそのものではありません。
保証できません。現在の出力はC#での閲覧を前提としており、ほかの.NET言語で作成されたアセンブリもC#形式で表示されます。元の言語の構文やプロジェクト構造は復元できません。
ネイティブプログラムである、依存関係が不足している、難読化や特殊な保護が施されている、または逆コンパイラが未対応の構造が使われている可能性があります。ファイル形式を確認し、サイズが小さく、パッキングされていない自社サンプルでお試しください。
注意
利用範囲、結果の制限、必要な注意点を事前に確認します。
自分が所有しているか、明示的に解析を許可されたアセンブリのみを使用してください。逆コンパイルによって、複製、変更、配布、アクセス制御の回避が許可されるわけではありません。商用ソフトウェア、契約条件が適用されるライブラリ、第三者のプログラムを扱う前に、ライセンスと組織のポリシーを確認してください。
このページにアップロードされたアセンブリはサーバーで処理されます。顧客データ、アクセス認証情報、秘密鍵、社内アドレス、未公開のビジネスロジックを含むファイルはアップロードしないでください。処理終了後に一時作業ディレクトリは削除されますが、ダウンロードしたZIPの保管と削除は利用者の責任となります。
難読化、パッキング、トリミング、最適化、依存関係の不足、アンマネージコードは、いずれも出力に影響します。プロジェクトZIPをそのままビルドできない場合や、元のビルド条件が書き出されたコードに含まれない場合があります。障害調査、コンプライアンス監査、修正に結果を使用する場合は、元のビルド成果物、シンボルファイル、正規の提供元に照らして再確認し、推測された名前を事実として扱わないでください。
関連
関連ツール、特集、利用可能なAPIを探せます。