私はデバッグ中で、いくつかのレガシーコードやフレームワークを扱っているときに、時には特定の値を含むプロパティを取得する必要があります。たとえば、私は153をUI上に置いていることを知っています。私はそこに置いた後、どこにあるのか知る必要があります。これは、このフレームワークに関する多くのことを理解するのに役立ちます。それは1つの使い方です、問題はどうやってそれを行うのですか?プロパティ/フィールドに値が含まれていることを知る方法はありますか?
答えて
あなたがソースレベルのデバッグを持っていないと
が質問にフィールドを配置するためにシンボル参照を使用することはできません、「reverse engineering
」の要件
を参照しているのだろうか。
変更が発生する可能性のある一般的なアドレス範囲を知っていれば、変更前後のメモリ領域のスナップショットを取ることができます。
このように2つのtext
スナップショットでdiffを実行すると、アドレスが検索されます。
もう1つの方法は、入力範囲を検索して入力値を見つけることです。
- 入力はプログラムメモリに変更することができるときは、この変更された値の「単純」
(153
は、例えば、検索に非常に困難である) - に応じて偽陽性を起こしやすいです、それはまた、偽陰性
いくつかのデバッグ環境をサポートするデータ・ウォッチポイントが発生します。
しかし、これらは通常、広い範囲では利用できません。
さて、実際には、値を提供することによってプロパティ/フィールド名を取得する方法を知りたいと思います。例:レガシーコードのあるプロジェクトには、複雑なクラス階層があります。私は、すべての入力値がどのように動作するかを理解するために、入力値のどこに行くのかを理解する必要があります。もし私がこのツールを手に入れたら、私は153を書いています。プロパティ/フィールド値が153のすべてのクラスが表示されます。 –
ええ、あなたのタグであなた自身の質問に答えました。デバッガを付けて値を調べます。
いいえ、問題は、この値が現在のデバッグコンテキストにあるクラスプロパティ/フィールドを取得する方法です。それを見つける方法?唯一の方法が手動であれば、必要なものに到達するためにチェックする必要のあるプロパティの量を想像してください。 –
- 1. サーバから、私のページがIframeにロードされていることを知る方法があります
- 2. アンドロイドアプリがインストールされているデバイスを知る方法はありますか?
- 3. コンポーネントにヘルパーが含まれているときにコンポーネントを再レンダリングする方法はありますか?
- 4. 履歴にページを含める方法はありますが、時にはそれを含めることがありますか?
- 5. 配列に含まれていない値でDataTableをフィルターする方法はありますか?
- 6. Amazon Lexが聞くことを知る方法はありますか?
- 7. プログラムが何をしているかを知る方法はありますか?
- 8. UDIDがビルドに含まれているかどうかを確認する方法はありますか?
- 9. Androidフレームワークに含まれているものを知る方法
- 10. フェッチされているURLを知る方法はありますか?
- 11. jupyterノートブックがどのカーネルに組み込まれているかを知る方法はありますか?
- 12. hrefにハッシュが含まれている場合にリンクをブロックする方法はありますか?
- 13. 遅延ロードされた値にバインドするより良い方法はありますか?誰もがより良い方法を知っている場合
- 14. C#Windowsフォームアプリケーションの起動時に何が起こっているかを知る方法はありますか
- 15. レイアウト内のボタンが押されていないことを知らせる方法はありません
- 16. preg_match部分値を知る方法はあります
- 17. Zend_Form_Element_Radioを無効にする方法はありますが、依然としてその値はPOSTリクエストに含まれていますか?
- 18. 上記のAndroid 8.0の場合。システムにピップモードがあることを知る方法はありますか?
- 19. spline()が使うノットを知る方法はありますか?
- 20. タイトルバーに "X"というテキスト(値)が含まれていることをアサルトで確認する方法
- 21. 戻り値のないストアドプロシージャが実行されたことを確認する方法はありますか?
- 22. 前の行にバックスラッシュ(\)が含まれていない行を一致させる方法はありますか?
- 23. ランダム化されたリストにURLの一部が含まれていないことを確認するより効率的な方法はありますか?
- 24. Sharepointファイルがサブフォルダに含まれていることを検出する方法
- 25. リストを含むリストに値を設定する方法はありますか?
- 26. jQuery変数にMySQL値を割り当てることができる「クリーナー」な方法はありますか?
- 27. サービスファブリックウィンドウコンテナがシャットダウンされていることを知ります
- 28. グローバルが宣言されていないかどうかをwebpackが知る方法はありますか?
- 29. JS:関数と呼ばれるオブジェクトを知る方法はありますか?
- 30. dijit.Treeノードが開いているか閉じているかを知る方法はありますか?
どのプログラミング言語とIDEで作業しているのかわかっていれば役に立ちます。 –
申し訳ありませんが、IDE - VS 2005と2008です。いずれにしてもそれを行う方法はわかりません。 –