首页 新闻 搜索 专区 学院

VS 2012是怎么找到工程引用的dll的?

0
悬赏园豆:30 [待解决问题]

在vs生成的工程文件.csproj中,有对其他dll的引用。打开.csproj文件可以看到类似一下的内容:

 1 <Reference Include="BCGSoft.Visualization, Version=3.1.10000.0, Culture=neutral, PublicKeyToken=03ac5f666b0cdaca, processorArchitecture=MSIL">
 2       <SpecificVersion>False</SpecificVersion>
 3       <HintPath>..\..\..\bin\BCGSoft.Visualization.dll</HintPath>
 4       <Private>False</Private>
 5     </Reference>
 6     <Reference Include="Common.Data, Version=1.6.1.0, Culture=neutral, processorArchitecture=MSIL">
 7       <SpecificVersion>False</SpecificVersion>
 8       <Private>False</Private>
 9     </Reference>
10     <Reference Include="Common.LogWriter4net, Version=1.6.1.0, Culture=neutral, processorArchitecture=MSIL">
11       <SpecificVersion>False</SpecificVersion>
12       <HintPath>..\..\..\..\..\..\commomdll\Common.LogWriter4net.dll</HintPath>
13       <Private>False</Private>
14     </Reference>

如果没有hintpath标签或者hintpath标签的路径不存在,但是vs依然可以找到存放在bin中的dll,请问VS是怎么找到这些dll的?是有默认的路径吗?另外这几个标签都表示什么意思?

王仙客的主页 王仙客 | 初学一级 | 园豆:12
提问于:2014-01-15 14:02
< >
分享
所有回答(3)
0

如果hintpath不存在,我觉得会在GAC与“bin文件夹”中找

dudu | 园豆:38913 (高人七级) | 2014-01-15 14:05

现在有两台电脑,都是从SVN上获取的代码,一台可以找到引用的dll,另外一台找不到,在bin里面都有这个dll,这个该怎么解决?如果是重新引用是可以,但重新引用了会修改.csproj文件中的引用路径,不想修改这个文件,有其他方法解决吗?

支持(0) 反对(0) 王仙客 | 园豆:12 (初学一级) | 2014-01-15 14:20

@油头教授: 

有两种解决方法:

1. 将引用的dll放在单独文件夹中并加入SVN,然后从这个文件夹中引用。

2. 或者通过nuget引用

支持(0) 反对(0) dudu | 园豆:38913 (高人七级) | 2014-01-15 14:29

@dudu: 嗯,这个解决方法是可以的,只是更行弄清楚里面的原理,呵呵

支持(0) 反对(0) 王仙客 | 园豆:12 (初学一级) | 2014-02-25 08:59
0

你重新添加一下

幕三少 | 园豆:1374 (小虾三级) | 2014-01-15 14:40
-1

一般添加引用都会在Bin目录下添加。

jianrong.zheng | 园豆:550 (小虾三级) | 2014-01-15 16:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册