2011-02-01 17 views
0

私は、他のvb6 dllを使用するいくつかのC#DLLを持つプロジェクトを持っています。私も他のvb6 dllを使用するvb6 dllを持っています。これらの依存関係をすべてマップしたいので、どのvb6 dllがまだ使用されているかわかります。COM DLLの依存関係ツリー

ありがとうございました。

+1

を試してみてください?コンパイルされたVB6 DLLからCOM依存関係情報を簡単に取り出す方法はないと思います。もちろん、それでも実際には使用されていない依存関係がリストされていることがあります。 –

+0

私は.vbpファイルを持っています。私は他のプロジェクトのvb6オブジェクトに依存するすべてのツリーを見たいと思っています。 –

+0

あなたの質問の一部は、この質問の複製です[別のVB6 DLLが参照されているDLLを見つけるのに最適なツール](http://stackoverflow.com/questions/69538/what-is-the-best-tool-to- find-which-dll-another-vb6-dll-is-referenced-to) – MarkJ

答えて

2

用紙を取り出して、すべてのDLLの名前を書きます。次に、DLL AがDLL Bに依存する場合、DLL AからDLL Bに矢印を描きます。

その後、矢印がない場合、DLLは使用されていないことがわかります。

あなたが今持っていることはdirected acyclic graph(DAG)です - あなたはDLLをBとCを参照するDLL Aを持っているかもしれないので、それがすべてのDAG以来DLL D.

を参照し、どちらも、おそらく木ではありません部分的な順序を誘発する場合は、新鮮な紙を取り出して、のDLLがの依存関係になるようにグラフを再描画することができます。にはという依存関係があり、有用な参照シートになります。

1

は、あなたはまだ.VBPプロジェクトはVB6のDLLのために周りのファイルを持っていますかDependency Walkerのhttp://www.dependencywalker.com/

+0

COM DLLで動作しますか? – MarkJ

+0

はい、それはWebサイトで言われているようにCOM DLL、OCX、EXEなどで動作します:Dependency Walkerは32ビットまたは64ビットWindowsモジュール(exe、dll、ocx、sysなど)をスキャンする無料のユーティリティです。 )、すべての依存モジュールの階層ツリー図を作成します –