当使用csc.exe编译c#程序集时,需要使用/r开关来添加引用的程序集,
1.如果/r后使用的是程序集的完事路径时,csc会直接定位。
2.如果/r后使用的是一个不带路径的文件名时,csc将在以下目录查找程序集(按顺序)
a) 当前工作目录
b) 当前使用的clr所在的目录,也就是csc.exe所在的目录。例如:c#2.0的目录为:C:\Windows\Microsoft.NET\Framework\v2.0.50727
c) csc /lib开关指定的文件夹
d) 系统环境变量lib中指定的文件夹
* 安装.net framework时会有两份程序集,一份在CLR所在的目录,另一份在GAC目录中,当使用这些程序集时CLR将加载GAC目录中的程序集。
CLR中和程序集便于开发时引用。
1.如果/r后使用的是程序集的完事路径时,csc会直接定位。
2.如果/r后使用的是一个不带路径的文件名时,csc将在以下目录查找程序集(按顺序)
a) 当前工作目录
b) 当前使用的clr所在的目录,也就是csc.exe所在的目录。例如:c#2.0的目录为:C:\Windows\Microsoft.NET\Framework\v2.0.50727
c) csc /lib开关指定的文件夹
d) 系统环境变量lib中指定的文件夹
* 安装.net framework时会有两份程序集,一份在CLR所在的目录,另一份在GAC目录中,当使用这些程序集时CLR将加载GAC目录中的程序集。
CLR中和程序集便于开发时引用。