問題タブ [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 を使用してきましたが、最近マシンを切り替えたばかりで、再インストールしました。しかし、コードを逆アセンブルしようとすると、[逆アセンブラー] ウィンドウが空白で表示されます。
TimeSpan メンバーを逆アセンブルしようとしているスクリーンショットを次に示します。
代替テキスト http://img17.imageshack.us/img17/1678/36689859iz7.png
.net - Reflector を使用すると、.NET アプリに埋め込まれた app.manifest が表示されないのはなぜですか?
「asInvoker」を含むマニフェストをアプリに追加したことを覚えていなくても、UAC が有効になっている Vista タスク マネージャーによると、仮想化が「無効」で実行される WinForms .NET アプリがあります。VS.NET (このプロジェクトは VS.NET の 4 つのバージョンすべてを使用しています)は、ソリューション エクスプローラーに表示される\Properties\app.manifestファイルを追加している必要がありますが、このファイルには、仮想化を無効にすることが期待されるtrustinfo要素が含まれていません。 . そのため、実際の実行可能ファイルに何が埋め込まれているかを確認するために Reflector を起動しましたが、app.manifest ファイルが見つかりません。実行可能ファイルでマニフェストまたはその兆候を見つけることができるはずですか? VS 2008 によると、ビルド アクションはBaseApplicationManifest です。、しかし、これは実行可能ファイルに埋め込まれていないということですか? 仮想化を無効にした状態でアプリが実行される理由を誰かに説明してもらえますか? また、説明したら、Reflector を介してアプリでこれを引き起こすアーティファクトを見つける場所を教えてもらえますか?
私のソリューションにある app.manifest のフォローアップとして、誰がどれくらいの期間知っているかを知っていますが、これ以上必要かどうかわからないあらゆる種類の IPermissions でいっぱいです。このファイルにコンテンツを追加するのは何ですか? また、不要になったアクセス許可を含めることができますか? 剪定または管理する必要がありますか?trustinfo を明示的に追加する必要がありますか? app.manifest は謎に過ぎず、もっと学ぶ必要があると思います。
更新:この記事から、SysInternals/Microsoft Sigcheck ユーティリティを使用して次の情報を確認できることを知りましたが、アプリが MyApplication.app で署名された方法がわかりません。これはビルド プロセスのどこで発生していますか?
更新 2:最終的にそこに到達するようです。VS 2008 では、実行可能ファイルのプロジェクト ページに [マニフェスト] オプションが追加されました。このプロジェクトでは、[既定の設定でマニフェストを埋め込む] が選択されています。これはどのようにしてそこにたどり着いたかという答えですが、Reflector でこれを確認するにはどうすればよいでしょうか?
.net - 市販の難読化ツールはどのようにして .net Reflector と ILDASM をクラッシュさせますか?
一部の商用難読化ツールは、 ILDASM (および Reflector などの他の同様のツール)をクラッシュさせることができると主張しています。
彼らがそれをどのように達成するかについて何か考えはありますか?
ここの多数のスレッドで述べられているように、十分な動機/時間/スキルを持つ人は常にコードを読み取る方法を見つけます (つまり、実行可能であれば、逆コンパイル可能です)。 Reflector がそれを実行できない場合は、コードを作成してください。
私の IP に対するこのレベルの保護 (つまり、私が投げるすべてのトリックを回避する方法をおそらく見つけるハードコアな人以外の誰に対しても保護される) は、私にとって間違いなく十分です。
.net - コードビハインドから実際のソースコードをaspxページに表示可能(サンプルコードページ用)
ライブラリのコード使用例を表示する aspx ページの作成に取り組んでいます。
したがって、基本的には、たとえば次のようにしたいと思います。 説明 ソースコード ボタン出力 (データグリッド内)
表示目的でボタンの後ろから aspx ページにコードをコピー アンド ペーストするのではなく、実行時に実際のソース コードを読み取って表示できるようにできるとよいのではないかと考えました。洗練されていること以外に、表示されるソース コードが最新であることを保証するという追加の利点があります。一方、誰かが変更を加えて aspx ページを新しいコードで更新するのを忘れた場合、コピー アンド ペーストは古くなる可能性があります。
これを行うには 2 つの方法が考えられます: 1) (kludgy) - コード ビハインド ファイルをデプロイします。このファイルは実行時に読み取ることができ、適切な関数コードを解析して表示できます。2) (推奨) 実行時に DLL を逆コンパイルし (リフレクターが行うように)、コードを表示します。
したがって、#1の方法は知っていますが、#2についてはわかりません(可能であれば)。
c# - インターフェイスのすべての実装をどのように見つけますか?
C# で定義されたインターフェイスがあるとします。インターフェイスの実装を提供するすべてのクラスを見つける最も簡単な方法は何ですか?
強引な方法は、Visual Studio で「参照の検索」を使用し、結果を手動で調べて実装から使用法を分離することですが、比較的少数の実装で頻繁に参照される大規模なコードベースのインターフェイスの場合、これは可能性があります。時間がかかり、エラーが発生しやすい。
Java では、コードベースで javadoc を実行すると ( -private オプションを使用してプライベート クラスを含める)、インターフェイスのドキュメント ページ (例: Comparable ) が生成され、インターフェイスのすべての実装クラスとサブインターフェイスが含まれます (ただし、それは含まれません)。サブインターフェースの実装クラスが含まれている場合、これらはリストされたサブインターフェースにドリルダウンすることで比較的簡単に判別できます)。私が探しているのはこの機能ですが、C# と Visual Studio を使用しています。
c# - 自動プロパティを処理する Reflector アドインまたはその他のツールはありますか?
Reflector は、自動プロパティについてこれを示しています。
それを次のように変換するアドインまたはその他のツールはありますか。
これらのアドインのいずれかが上記をサポートしているとは思わない: http://www.codeplex.com/reflectoraddins
あなたが私が間違っていることを証明してくれれば、喜んで購入します。
c# - メソッドを C# ソース コードに変換する
私は非常に単純なコード生成ツールを作成していますが、MSIL (または MethodInfo) オブジェクトを C# ソースに変換する機能が必要です。Reflector がこれをうまくやってのけることはわかっていますが、UI だけであるという不快な「機能」があります。
string.Format を使用して変数部分を挿入し、C# 文字列を直接生成できることはわかっていますが、プログラムでメソッド (たとえば、デリゲートまたは MethodInfo オブジェクト) を生成し、それらのメソッドをライターに渡すことができるようにしたいと考えています。それらをC#に変換します。
システム ライブラリを使用すると、実行時に C# ソース コード文字列からコンパイル済み (および実行可能) メソッドに簡単に変換できるのに、オブジェクトからソース コードに簡単に変換できないというのは、少しばかげているように思えます。
何か案は?
.net - Visual Studio で F1 キーを押したときに .NET Reflector を呼び出すことはできますか?
Visual Studio 2008 で F1 キーを押すと、(Visual Studio のドキュメントが起動するのを待つのではなく) .NET リフレクターを起動して、選択したクラス/メソッドに移動したいと考えています。
そのように Visual Studio を構成することは可能ですか?
フォローアップの質問:
- キャレットの下のタイプ/アセンブリを決定する方法( x0nの回答で説明されているように)?
c# - リフレクターなどのソフトウェアでdllが開かないようにする方法はありますか?
こんにちは、C#の特定のdllがリフレクターで開かれるのを防ぐ方法はありますか?多くのdllを開くことができ、リフレクターを使用してコードを取得できます。ただし、一部のdllを開こうとすると、「特定のdllにCLIヘッダーが含まれていません」というエラーメッセージが表示されます。
どうすればこのようなdllを作成できますか?