Visual Studioが.NET DLLへの依存関係を解決するメカニズムを理解することができません。いくつかの.csproj
ファイルでは、次のようにいくつかの依存関係があります。DLL hellの理解
<Reference Include="SomeDependency,
Version=SomeVersion,
Culture=neutral,
PublicKeyToken=SomePublicKeyToken,
processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>SomeHintPath</HintPath>
</Reference>
しかし、HintPath
は、無効なパスを指摘し、まだVisual Studioは、明らかどこかからDLLを取って、必要に応じてプロジェクトをビルドし、展開することができました。私の場合は、最終的な結果が望みどおり重要な問題ではありませんでしたが、最終的にどのメカニズムによって.NET DLLへの依存が解決されるのか分かりません。
Visual StudioプロジェクトをビルドするときにどのDLLが実際に参照されているかを知るにはどうすればよいですか? dllの許可された場所は何ですか?あなたはすべてのロードされたアセンブリを決定するために、次のコードを使用し、また、それらのパスを確認することができます
これはあなたの質問に答えるん:(http://stackoverflow.com/questions/49972/in-what-order-are-locat ion-searched-to-load-referenced-dlls) –
@KevinWallisはい、ありがとう、参考になりました。しかし、2番目の考えでは、そうではありません。基本的に答えは「それは依存している」ということです。 – Codor