如果GAC中有多个版本,VS会选择相同的DLL版本?

时间:2013-01-07 09:58:07

标签: visual-studio gac system.data.sqlite

我在涉及SQLITE和.NET的项目中已经开发了一段时间。 最近,SQLITE发布了新版本。我决定将它安装到GAC(与之前的安装相同)。 现在,我可以在GAC中看到两个dll。 VS会自动选择使用最新的吗?

非常感谢提前!

1 个答案:

答案 0 :(得分:2)

如果在应用程序中未使用DLL的完整路径,则这取决于DLL search order。默认顺序(SafeDllSearchMode已禁用):

  
      
  • 加载应用程序的目录。
  •   
  • 当前目录。
  •   
  • 系统目录。使用GetSystemDirectory函数获取此目录的路径。
  •   
  • 16位系统目录。没有函数可以获取此目录的路径,但会搜索它。
  •   
  • Windows目录。使用GetWindowsDirectory函数获取此目录的路径。
  •   
  • PATH环境变量中列出的目录。请注意,这不包括指定的每个应用程序路径    App Paths 注册表项。时,不使用 App Paths 键   计算DLL搜索路径。
  •