Как я могу ссылаться на dll в GAC из Visual Studio?
Эта assembly находится в GAC: Microsoft.SqlServer.Management.RegisteredServers.dll
Как добавить ссылку на эту сборку в Visual Studio?
Я могу просмотреть файл в каталоге c: \ windows \ assembly \
- Как вы находите все реализации интерфейса?
- Разработка приложений .NET Compact Framework в Post-2008 Visual Studio?
- Создание прокси-сервера веб-службы в Visual Studio из файла WSDL
- Какая разница в настройке Встраивать типы Interop true и false в Visual Studio?
- Почему ReSharper хочет использовать «var» для всего?
- Перерыв в модуле classа или разрыв по необработанным ошибкам (ошибка проверки ошибок VB6, настройка параметров в среде IDE)
- # включить все .cpp-файлы в единый блок компиляции?
- Ошибка сборки Visual Studio: невозможно скопировать exe-файл из obj \ debug в bin \ debug
- Отладка с параметрами командной строки в Visual Studio
- Точка останова не привязана - Visual Studio 2015
- Как исправить DNX / DNVM в Visual Studio 2015?
- Как заставить Visual Studio использовать встроенную привязку amd64
- Где Visual Studio 2017 хранит свою конфигурацию?
Как говорили другие, большую часть времени вы не захотите этого делать, потому что он не копирует сборку в ваш проект и не будет развертываться с вашим проектом. Однако, если вы похожи на меня и пытаетесь добавить ссылку, которую все целевые компьютеры имеют в своем GAC, но это не assembly .NET Framework:
- Откройте диалоговое окно «Запуск Windows» (Windows Key + r)
- Тип C: \ Windows \ assembly \ gac_msil. Это какой-то странный хак, который позволяет вам просматривать ваш GAC. Вы можете добраться до него только через диалог запуска. Надеюсь, мое распространение этой информации в конечном итоге не заставит Microsoft ее исправлять и блокировать. (Слишком параноидальный?: P)
- Найдите свою сборку и скопируйте ее путь из адресной строки.
- Откройте диалоговое окно «Добавить ссылку» в Visual Studio и выберите вкладку «Обзор».
- Вставьте путь к вашей сборке GAC.
Я не знаю, есть ли более простой способ, но я его не нашел. Я также часто использую шаг 1-3 для размещения файлов .pdb со своими assemblyми GAC, чтобы убедиться, что они не потеряны, когда мне потом нужно использовать Remote Debugger.
Я создал бесплатный инструмент, который поможет вам достичь своей цели. Muse VSReferences позволит вам добавить ссылку глобального кэша привязки к проекту из пункта меню «Добавить ссылку GAC».
Надеюсь, это поможет Muse VSExtensions
Регистрация assmblies в GAC затем не помещает ссылку на сборку в диалоговом окне добавления ссылок. Вам все равно нужно ссылаться на сборку по пути для вашего проекта, главное отличие в том, что вам не нужно использовать локальный вариант копирования, ваше приложение найдет его во время выполнения.
В этом конкретном случае вам просто нужно ссылаться на свою сборку по пути (просмотреть), или если вы действительно хотите иметь ее в диалоговом окне добавления ссылок, есть параметр реестра, в котором вы можете добавить дополнительные пути.
Обратите внимание: если вы отправляете свое приложение кому-то, у которого нет этой сборки, вам нужно будет отправить его, и в этом случае вам действительно нужно использовать распространяемый SharedManagementObjects.msi.
В VS2010 из windows «Добавить реестры» вы можете нажать «Обзор» и перейти к C: \ Windows \ Assembly и добавить ссылки на нужные сборки. Обратите внимание, что файлы могут быть сгруппированы в разные папки, такие как GAC, GAC_32, GAC_64, GAC_MSIL и т. Д.
В VS щелкните правой кнопкой мыши ваш проект, выберите «Добавить ссылку …», и вы увидите все пространства имен, существующие в вашем GAC. Выберите Microsoft.SqlServer.Management.RegisteredServers и нажмите «ОК», и вам должно быть хорошо идти
РЕДАКТИРОВАТЬ:
Именно так вы хотите это делать большую часть времени. Однако после некоторого разговора я нашел эту проблему в MS Connect. MS говорит, что это известная проблема с развертыванием, и у них нет работы. Парень говорит, что если он копирует dll из папки GAC и бросает его в свой мусорный бак, он работает.
Единственный способ, который работал для меня, – скопировать dll на рабочий стол или что-то еще, добавить ссылку на него, а затем удалить DLL с рабочего стола. Visual Studio будет обновляться и, наконец, ссылается на DLL из GAC.
Предполагая, что вы alredy пытались «добавить ссылку …», как объяснялось выше, и не удалось, вы можете посмотреть здесь . Они говорят, что вам нужно выполнить некоторые предварительные условия: – .NET 3.5 SP1 – Установщик Windows 4.5
EDIT: Согласно этому сообщению, это известная проблема.
И это может быть решение, которое вы ищете 🙂
Может быть, слишком поздно ответить, но я нашел очень простой способ сделать это (без взлома).
- Поместите свою DLL в GAC (для 3.5 Drag Drop внутри “C: \ Windows \ assembly \” )
- Проекты GoTo -> Свойства
- Щелкните ссылку «Ссылка» (для 3.5 это «C: \ Windows \ assembly» )
- и assembly
Надеюсь, поможет
Соответствующие файлы и ссылки можно найти здесь:
http://msdn.microsoft.com/en-us/library/cc283981.aspx
Обратите внимание на ссылки на него о реализации / etc.
Я нашел это расширение для Vsite VAC .