Поделиться через


Выбор расположения файла VSPackage к оболочке Visual Studio

Visual Studio должен находить библиотеку DLL сборки для загрузки VSPackage. Его можно найти различными способами, как описано в следующей таблице.

Метод Description
Используйте раздел реестра CodeBase. Ключ CodeBase можно использовать для перенаправления Visual Studio для загрузки сборки VSPackage из любого полного пути к файлу. Значением ключа должен быть путь к библиотеке DLL. Это лучший способ загрузки сборки пакета Visual Studio. Этот метод иногда называется "Методом каталога CodeBase/private installation directory". Во время регистрации значение базы кода передается классам атрибутов регистрации через экземпляр RegistrationAttribute.RegistrationContext типа.
Поместите библиотеку DLL в каталог PrivateAssemblies . Поместите сборку в подкаталог PrivateAssemblies каталога Visual Studio. Сборки, расположенные в PrivateAssemblies , автоматически обнаруживаются, но не отображаются в диалоговом окне "Добавление ссылок ". Разница между PrivateAssemblies и PublicAssemblies заключается в том, что сборки в PublicAssemblies перечисляются в диалоговом окне "Добавление ссылок". Если вы решили не использовать метод "CodeBase/private install directory", необходимо установить в каталог PrivateAssemblies .
Используйте сборку с строгим именем и раздел реестра сборок. Ключ сборки можно использовать для явного направления Visual Studio для загрузки строгой сборки VSPackage. Значение ключа должно быть строгим именем сборки.
Поместите библиотеку DLL в каталог PublicAssemblies . Наконец, сборку можно также поместить в подкаталог PublicAssemblies . Сборки, расположенные в PublicAssemblies , автоматически обнаруживаются и также отображаются в диалоговом окне "Добавление ссылок " в Visual Studio.

Сборки VSPackage должны размещаться только в каталоге PublicAssemblies , если они содержат управляемые компоненты, которые предназначены для повторного использования другими разработчиками VSPackage. Большинство сборок не соответствуют этому критерию.

Примечание.

Используйте надежные и подписанные сборки для всех зависимых сборок. Эти сборки также должны быть установлены в собственном каталоге или глобальном кэше сборок (GAC). Это защищает от конфликтов с сборками, имеющими то же базовое имя файла, которое называется привязкой слабого имени.