«Официальный» способ развертывания сборок в GAC? - PullRequest
8 голосов
/ 09 июня 2009

Мне просто интересно - если мне нужно развернуть сборку в GAC, каков «официальный» способ сделать это?

В настоящее время мы либо перетаскиваем вручную в папку c: \ windows \ assembly, либо используем gacutil.exe. Первый способ явно не самый удачный (в конце концов, это ручной процесс), и gacutil является частью SDK и недоступен по умолчанию на производственных серверах.

Существуют ли инструкции по развертыванию Microsoft?

Ответы [ 6 ]

8 голосов
/ 09 июня 2009

Самый простой способ - использовать проект установки. Там вы можете просто добавить сборки из выходных данных вашего проекта в специальную папку GAC, и установщик добавит их в GAC для вас.

1 голос
/ 14 декабря 2009

Попробуйте это:

Образцы управляемых оболочек GAC API http://blogs.msdn.com/junfeng/articles/229649.aspx

1 голос
/ 09 июня 2009

Если вы не используете существующую технологию установки, «официальным» способом является использование нативного API IAssemblyCache :: InstallAssembly. Но управляемую альтернативу можно найти в пространстве имен System.EnterpriseServices.Internal. Несмотря на название, это на самом деле публичный класс в стандартной сборке.

Publish.GacInstall

0 голосов
/ 16 февраля 2011

Инструмент, который я использовал для создания инсталляторов, которые можно автоматизировать: Wix . У нас были разные установщики для пробных версий, полных версий и для множества различных продуктов, которыми мы должны были управлять. Wix смог сделать все это управляемым для нас. Wix работает так, что вы описываете все в файлах XML. Одним из преимуществ является то, что вы можете держать XML под контролем исходного кода.

Вот некоторые сообщения в блоге о том, как использовать Wix для развертывания dll как в GAC, так и локально:

0 голосов
/ 12 февраля 2011

Согласно Установите Shield ´s веб-сайт:

InstallShield 2011: Microsoft's Монтажное решение выбора для Приложения Visual Studio 2010

  • получено 12 февраля 2011
0 голосов
/ 12 февраля 2011

Другой вариант - использовать такой инструмент, как InnoSetup .

...