2

我创建了一个自制程序集,我认为我使用 .Net 2.0 配置工具 (mscorcfg.msu) 在 GAC 中正确安装了它但是,当我想在 Visual Studio 中引用它时,我在哪里可以找到它?

(我知道,无论如何我都不应该使用 GAC,但请放纵我 ;-))

编辑:我问的问题不够清楚:将程序集安装到 GAC 后,它没有显示在 Project-Add Reference 菜单的 .NET 选项卡上。

4

3 回答 3

4

添加引用对话框实际上查看注册表,特别是:

  • [HKEY_LOCAL_MACHINE]\SOFTWARE\Microsoft\.NETFramework\AssemblyFolders
  • [HKEY_CURRENT_USER]\SOFTWARE\Microsoft\.NETFramework\AssemblyFolders

要添加您的程序集,您必须编辑这些注册表项。或者简单地使用“浏览...”按钮(而不是)可能更诱人。

于 2009-06-21T21:09:36.397 回答
1

当您需要引用已部署到 GAC 的程序集时,您需要通过 Visual Studio 中“添加引用”对话框的“浏览”选项卡浏览到原始项目的 \bin\Debug 目录。

这样做的原因是,由于您已将程序集安装到 GAC 中,因此它将具有强名称,因此清单中的 .publickey 值。

当您引用其清单包含 .publickey 值的程序集时,Visual Studio 假定强命名程序集很可能会部署到 GAC,因此不会费心将二进制文件复制到您的应用程序文件夹。

相反,它将使用 GAC 中的版本。

于 2009-06-22T00:34:10.273 回答
0

我创建了一个完全免费的工具,它将帮助您实现目标。Muse VSReferences将允许您从“添加 GAC 引用”菜单项添加对项目的全局程序集缓存引用。

希望这个hekps,

Muse VSExtensions

于 2010-04-29T09:40:40.900 回答