問題タブ [reflector]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - .NET Reflector より優れた機能はありますか?
私はかつて .NET Reflector を愛用していましたが、Red Gate Software が引き継いで以来、劇的に衰退しました。今では更新を余儀なくされ (これはまったくばかげています)、半分の時間で更新がスムーズに進まず、更新のたびに私の生産性がますます妨げられています。私はそれにうんざりしていて、もっと良いものを作る準備ができています。より良い逆アセンブラはありますか?
アップデート:
回答に記載されているさまざまな選択肢のリスト -
c# - リフレクターとコンパイラーが生成したコード
Reflectorで逆アセンブルするdllがあり、クラスを生成します。このクラスには、VisualStudioでコンパイルされないコードが含まれています。
私はそれをleaglILコードと見なしますが、これからより高いレベルのc#を生成するにはどうすればよいですか。
イールドとIEnumerator<>1__state;
は、コンパイルされないILのようなものを生成するようです。
この種のILを含むリフレクターからクラスを生成する方法を知っている人はいますか?
これを解決するリフレクターアドインはありますか?
wpf - Visual Studio 2010がWPFに基づいている場合、リフレクターで開くことができないのはなぜですか?
Visual Studio 2010がWPFに基づいている場合、リフレクターで開くことができないのはなぜですか?
つまり、devenv.exe
ネイティブアセンブリのようですが、WPF UIコードはどこにありますか?
c# - 誰かがこの遅延評価コードを説明できますか?
だから、この質問はちょうどSOで尋ねられました:
私のサンプルコード:
誰かがこれが遅延評価される理由を説明できますか?私はReflectorでこのコードを調べましたが、始めたときよりも混乱しています。
リフレクター出力:
数値メソッドの場合、その式の新しい型を生成したように見えます。
これは私には意味がありません。そのコードをまとめて自分で実行するまでは、無限ループだと思っていたでしょう。
編集:これで、.Take()は、列挙が「終了」したことをforeachに伝えることができますが、実際には終了していないのに、Take()にチェーンする前にNumbers()全体を呼び出すべきではないことを理解しました。 ?テイクの結果は、実際に列挙されているものですよね?しかし、Numbersが完全に評価されていない場合、Takeはどのように実行されますか?
EDIT2:では、これは「yield」キーワードによって強制される特定のコンパイラトリックですか?
c# - MethodImplOptions.InternalCallでマークされたメソッドをその実装にリンクすることは可能ですか?
例外の考えられる原因を見つけるために、Reflectorを使用してコードパスをたどっています。私はどんどん深くなっていきましたが、次のようなメソッド呼び出しになりました。
メソッドのこのマークアップは、フレームワークにC++関数をどこかで呼び出すように指示します。実際に呼び出されるメソッド、さらには他に呼び出される可能性のあるメソッドを見つける方法はありますか?
注意:このメソッドのソースコードは実際には見たくありません。このメソッド呼び出しに起因する例外が発生する可能性があることを知りたいだけです。
wpf - WPFアセンブリ(つまり、PresentationCore、PresentationFramework)を逆コンパイルするときのリフレクターの問題
RedGateからReflectorの最後のバージョンをダウンロードしたところ、PresentationCoreやPresentationFrameworkなどの一部のコアWPFアセンブリのクラスを逆コンパイルできませんでした。
これが私の問題を説明する写真へのリンクです:
ご協力ありがとうございました。
c# - .resources(.resxではない)ファイルからビットマップを取得するにはどうすればよいですか?
リフレクターでアセンブリを開き、いくつかの.resourcesファイルをハードドライブに保存しました。そこにいくつかのビットマップがありますが、保存された.resourcesファイルからそれらを取得するにはどうすればよいですか?コードまたはプログラムを介して画像(.bmp)ファイルとして保存したいのですが。
c# - .NET リフレクターとゲッター/セッターの問題
最新の .NET Reflector を使用して、ソース コードを復元することがほとんど不可能な内部レガシー アプリを逆アセンブルしています。厄介なバグの原因を見つけて、パッチを当てる必要があります。Reflector は、プロジェクトの構造を再作成する際にいつものようにうまく機能しましたが、すぐに、一部のget_()
プロパティ呼び出しがそのおよびset_()
メソッド シグネチャに「拡張」されたままになっており、ソース コードをコンパイルできないことがわかりました。
最初は、すべての get/set 呼び出しに問題があると思っていました。しかし、よく見ると、それらのいくつかは問題ありませんが、他のもの (特に OleDbCommand および Forms.Control プロパティ) は および として生成されget_()
ますset_()
。
これらのケースは、Visual Studio の正規表現を使った簡単な「検索/置換」で解決できましたが、扱いにくいものです。Reflectorを正しく動作させる方法はありますか?
EDIT 1 - 以下の問題のあるコードの例:
編集 2 - アセンブリはリリース モードでビルドされました。
c# - C# コードの難読化
重複の可能性:
リバース エンジニアリングから .NET コードを保護しますか?
リバース エンジニアリングから .NET コードを保護するために何を使用していますか?
.NET アセンブリを逆コンパイルから保護するにはどうすればよいですか?
C# はリフレクションと逆コンパイルが可能であるため、コードを難読化する方法やリバース エンジニアリングから保護する方法を提案できますか?
.net - 潜在的な例外がスローされる可能性のある場所を追跡するにはどうすればよいですか?
ここでは、スタック トレースとスローされた例外の分析について多くの質問があります。
RedGate Reflector を使用して、いくつかの .net クラスの動作を調べています。特に、オブジェクトのConnectionString
プロパティを見ています。System.Data.SqlClient.SqlConnection
Reflector はArgumentException
、無効な接続文字列が指定された場合に、このプロパティが をスローする可能性があることを示します。
私の質問は、このプロパティがこの特定の例外をスローする可能性がある場合、コードを分析して例外がスローされた場所を見つけるにはどうすればよいですか? プロパティは別の関数を呼び出して値を設定します。この関数はArgumentException
直接スローしません。この例外がスローされる可能性のある場所を見つける方法を知りたいです。