0

私は Windows プロセスの分析にまったく慣れていませんが、先週、Xperf が非常に便利であることに気付きました。また、DLL の分析についていくつか質問があります。

プロセスによって使用される特定の DLL イメージによって使用されるレジストリ エントリとファイル パスを確認できるかどうか、およびこれを実現できるツールを確認できるかどうか疑問に思っていました。

これが不可能な場合、DLL が使用しているリソースを見つけるための適切な戦略、または代替アプローチは何かと考えていました。

4

2 に答える 2

1

これにはProcess Explorerを使用できます。他の SysInternals プロセス ツールのほとんども非常に便利です。Process Explorer は、大量のデータを表示するための (複雑な) UI を備えたツールの 1 つにすぎません。Process Monitorは、プロセスのリアルタイムのレジストリ、ファイル システムなどへのアクセスを示します。

于 2014-03-03T15:44:24.000 に答える
0

Process Monitor と xperf はどちらも、ファイルへのアクセスごとにコール スタックを記録できます。次に、これらの呼び出しスタックを調べて、呼び出しスタックで特定の DLL を探すことができます。

しかし、あなたの質問は実際には整形式ではありません。「特定の DLL によって使用される」とはどういう意味ですか? ファイルから読み取るときにDLL Dを呼び出すDLL Cを呼び出すDLL Bを呼び出すプロセスAを持つことができます。そのファイルを「使用」している DLL はどれですか? B、C、D、またはそれらすべて? 唯一の賢明な答えは、依存しているということです。

Hans Passant が言ったように、ハンドルは DLL ではなくプロセスによって所有されており、せいぜい「所有権」を特定の DLL に割り当てるためのヒューリスティックを考え出すことができます。

于 2014-03-18T02:51:40.233 に答える