此程序集位于GAC中:Microsoft.SqlServer.Management.RegisteredServers.dll
如何在Visual Studio中添加对此程序集的引用?
我可以在c:\ windows\assembly \中查看该文件
正如其他人所说,大多数时候你不想这样做,因为它不会将程序集复制到你的项目中,也不会随你的项目一起部署.但是,如果您像我一样,并尝试添加所有目标计算机在其GAC中的引用,但它不是.NET Framework程序集:
打开Windows运行对话框(Windows Key + r)
键入C:\ Windows\assembly\gac_msil.这是一种奇怪的黑客攻击,可让您浏览GAC.您只能通过运行对话框访问它.希望我传播此信息最终不会导致Microsoft修补它并阻止它.(太偏执了?:P)
找到您的程序集并从地址栏复制其路径.
在Visual Studio中打开"添加引用"对话框,然后选择"浏览"选项卡.
粘贴到GAC程序集的路径中.
我不知道是否有更简单的方法,但我还没有找到它.我还经常使用步骤1-3将.pdb文件与其GAC程序集放在一起,以确保在以后需要使用远程调试程序时它们不会丢失.
我创建了一个完全免费的工具,可以帮助您实现目标.Muse VSReferences将允许您从Add GAC Reference菜单项向项目添加Global Assembly Cache引用.
希望这有助于Muse VSExtensions
将程序集注册到GAC中不会在"添加引用"对话框中放置对程序集的引用.您仍然需要按项目的路径引用程序集,主要区别在于您不需要使用copy local选项,您的应用程序将在运行时找到它.
在这种特殊情况下,您只需要通过路径(浏览)引用程序集,或者如果您真的想在添加引用对话框中使用它,则可以使用注册表设置添加其他路径.
请注意,如果您将应用程序发送给未安装此程序集的人,则需要发送它,在这种情况下,您确实需要使用SharedManagementObjects.msi可再发行组件.
在VS2010中,在Add Rerences窗口中,您可以单击"Browse"并导航到C:\ Windows\Assembly并添加对所需程序集的引用.请注意,这些文件可能会分组在不同的文件夹下,如GAC,GAC_32,GAC_64,GAC_MSIL等.
在VS中,右键单击您的项目,选择"添加引用...",您将看到GAC中存在的所有命名空间.选择Microsoft.SqlServer.Management.RegisteredServers并单击OK,你应该很高兴
编辑:
这就是你想要在大多数时间里做这件事的方式.但是,经过一番探索后,我在MS Connect上发现了这个问题.MS表示这是一个已知的部署问题,他们没有解决方法.该家伙说,如果他从GAC文件夹中复制dll并将其放入他的垃圾箱,它就可以了.