1

実行時にロードされる特定の依存関係をトリガーしているアセンブリを見つける最も簡単な方法は何ですか?アプリケーションの一部としてロードされる100以上のアセンブリの1つに、古いアセンブリへの迷いの参照があります。

FUSLOGVWを使用すると、ロードされている古いアセンブリを確認できますが、ログには、どのアセンブリがロードされたのかがわかりません。私はCheckASMを使用しました。これにより、プライマリアセンブリの依存関係を参照し、ツリーを探索することができますが、これらはすべて問題ありません。

したがって、実行時に動的にロードされるアセンブリか、どこかの構成ファイルである必要があります。しかし、私は私の人生のためにそれを見つけることができません。

これを行うためのよりスマートな方法があるかどうか疑問に思っていましたか?

4

2 に答える 2

1

アセンブリを削除(または名前変更)して、プログラムがアセンブリを読み込もうとした時点で例外がスローされるかどうかを確認するのはどうですか?スタックトレースには、呼び出し元のアセンブリからのメソッドへの参照が含まれている必要があります。

于 2011-01-31T20:15:39.843 に答える
1

おそらく、すべてのアプリドメインでAssemblyResolveイベントをサブスクライブできます(あまり多くない場合)。ResolveEventArgsには、このための特別なフィールドが含まれています-ResolveEventArgs.RequestingAssembly

于 2011-01-31T20:27:28.557 に答える