419

RedGateのReflectorに代わるオープンソースを知っている人がいるかどうか尋ねるだけですか?Reflectorに似たツールが実際にどのように機能するかを確認することに興味があります。

リフレクターに代わる無料のオープンソースを知っている場合は次の関連する質問に答えることができます。

概要-2011年5月11日更新

提案されているさまざまなオープンソースプロジェクトとツールの簡単なまとめ:

  1. 共通コンパイラインフラストラクチャ(CCI)
  2. モノセシル
  3. ILSpy
  4. dnSpy(ILSpyのフォーク、プロジェクトは元のプロジェクトよりもアクティブに見えます)
  5. Dotnet ILエディター(DILE)
  6. IL.View
  7. モノフレクター( 2011年4月現在アクティブではありません)

次のリソースも興味深い場合があります。

  • TypeView.cs
  • .NETの逆アセンブルに関するJasonHaleyのメモ
  • Adrian Bankの最近のブログ投稿では、以下に記載されていないいくつかのオプションを含む、いくつかのReflectorの代替案を要約しています。
  • いくつかのオープンソースの選択肢(DILE、ILSpy、MonoDevelopを使用したMono Cecil)をReflectorと比較したMarkLichtenbergの詳細なブログ投稿。
4

10 に答える 10

175

2011年12月13日更新

次のオープンソースツールを利用できます。

于 2010-03-11T15:49:58.220 に答える
38

別の代替品はdotPeekです。JetBrainsはそれを無料のツールとして発表しました。Resharperと一緒に使用すると、おそらくより多くの機能がありますが、単独で使用した場合でも非常にうまく機能します。

ユーザーエクスペリエンスは、スタンドアロンの逆アセンブラというよりもMSVSに似ています。私はReflectorよりもコードを読むのが好きです。Ctrl+Tナビゲーションも私に適しています。ツリーをコードペインと同期するだけの方が良い場合があります。

全体として、それはまだ開発中ですが、すでに非常によく使用できます。

于 2011-06-11T07:25:24.757 に答える
31

私が知っている2つのオプション。

  • CCI
  • モノセシル

ただし、これらはC#を提供しません。

于 2010-03-11T15:20:56.497 に答える
15

Telerikは本日、独自の逆コンパイルツールであるJustDecompileのベータ版をリリースしました。クローズドソースですが、無料で有望に見えます。

于 2011-05-02T17:10:35.430 に答える
12

ILSpyはうまく機能します!

私が知る限り、Reflectorが行ったすべてのことを実行し、同じように見えます。

于 2011-07-13T18:16:02.487 に答える
10

実際、Reflectorはいくつかの逆コンパイラ機能を備えた逆アセンブラと見なされていると確信しています。アセンブリのファイルからバイトを読み取り、それをアセンブリ言語(この場合はILasm)に変換するための逆アセンブラ。ILをよく知られたパターン(式やステートメントなど)に解析し、C#、VB.Netなどの高水準言語に変換することで提供される逆コンパイラー機能。ReflectorのアドインAPIを使用すると、独自の言語トランスレーターを作成できます。あなたが望むのは...しかし、ILを式ツリーに解析する方法の魔法は厳重に守られた秘密です。

IL逆アセンブラがどのように機能するかを理解したい場合は、上記の3つのいずれかを確認することをお勧めします。Dile、CCI、Monoはすべてこのようなものの優れたソースです。

また、Ecma335仕様とSergeLidinの本も入手することを強くお勧めします。

于 2010-03-12T00:04:33.390 に答える
8

私がReflectorを使用した主な理由(そして、ほとんどの人がそれを使用した主な理由)は、その逆コンパイラーのためでした。メソッドのILをソースコードに戻すことができます。

その点で、Monoflectorは注目すべきプロジェクトになるでしょう。リフレクションを行うCecilと、逆コンパイルを行うCecil.Decompilerを使用します。ただし、Monoflectorは両方のライブラリの上にUIを重ねます。これにより、APIの使用方法について非常に優れたアイデアが得られるはずです。

モノフレクターは、リフレクターの完全な代替品でもあります。タイプを参照してメソッドを逆コンパイルできます。これは、人々がReflectorを使用した目的の99%です。端がとても荒いですが、すぐに変わると思います。

于 2011-02-04T14:08:45.643 に答える
5

リフレクター自体は.NETアセンブリなので、リフレクターでReflector.exeを開いて、そのビルド方法を確認できます。

于 2010-03-11T15:02:28.187 に答える
3

私は現在、AssemblyAnalyzerと呼ばれるオープンソースの逆アセンブラー/逆コンパイラーに取り組んでいます。メソッドのソースコードを生成し、アセンブリメタデータとリソースを表示し、依存関係をウォークスルーできるようにします。

プロジェクトはCodePlexでホストされています=> http://asmanalyzer.codeplex.com/

于 2011-05-20T18:36:54.523 に答える
1

リフレクターツールはリフレクションを使用します。  -どうやらこれは正しくありません。

あなたは2つのことを求めました-リフレクターが何をするかを示すコードと、リフレクターの代替です。

これは、Reflectorの機能から大幅に簡略化された例ですが、リフレクションの手法を示しています: TypeView.cs

オープンソースのReflectorの代替品についての提案はありません。

于 2010-03-11T15:17:18.367 に答える