2010-02-11 53 views
1

我不知道是否有某种方法可以知道在.csproj文件中列出的dll的完整路径。如何从.csproj文件知道DLL的完整路径?

最有趣的对我来说是解决路径,默认的dll像system.xml.dll的,System.Data.dll中和等

在.csproj的文件只有线与短名称:

<Reference Include="System.Xml.Linq"> 
    <RequiredTargetFramework>3.5</RequiredTargetFramework> 
</Reference> 
<Reference Include="System.Data.DataSetExtensions"> 
    <RequiredTargetFramework>3.5</RequiredTargetFramework> 
</Reference> 
<Reference Include="System.Data" /> 
<Reference Include="System.Xml" /> 

我应该去$ PATH变量并尝试解决给定的DLL的名字?或者是什么 ?

回答

1

您将检查的第一个地方是GAC。如果引用不是在GAC,则经常会出现的参考这样下方的相对或绝对路径:

<Reference Include="mydll"> 
    <HintPath>..\..\mydll.dll</HintPath> 
</Reference 
+0

谢谢! 一个问题: 我已经运行gacutil.exe -l,并且看到了只有dll名称,没有路径,但只有短名称...我需要完整路径。 – Nelly 2010-02-11 14:52:29

+0

您是否想要使用代码来查找dll的确切位置,或者您只是想要自己查找位置? – 2010-02-11 16:11:22

1

如果任何.NET像你这样的例子库,然后他们通常会在以下文件夹:C:\ Windows \ Microsoft.NET \ Framework \ < .net版本> \或whaterver在GAC中指定。否则会有一个HintPath,它将成为当前文件夹的相对路径。