Встраивание SMO-библиотек в настройку и развертывание - PullRequest
2 голосов
/ 20 ноября 2008

У меня есть проект .NET Set and Deployment, который должен выполнять набор действительно длинных сценариев SQL как часть процесса установки. Я использовал SMO-библиотеки для выполнения вызовов файлов сценариев .sql. Эти SMO-библиотеки, однако, не являются частью .NET Framework, но они поставляются в комплекте с SQL Server 2005 или 2008. Теперь, если установка выполняется на компьютере, который не установлен SQL Server 2005/2008, выполнение сценария SQL завершается неудачно. Это вполне допустимый вариант использования для моей установки, так как пользователь может иметь сервер SQL не на своем локальном компьютере, а на сетевом сервере. Как встроить dll SMO вместе с установкой .msi, чтобы она не зависела от каких-либо dll SMO на компьютере, на котором она запускается?

Ответы [ 2 ]

0 голосов
/ 24 ноября 2008

Извините, я не понял вопроса с первого взгляда. Я бы сделал следующее:

  1. Создание собственного проекта установщика (Библиотека классов)
  2. Добавить ссылку на SMO DLL (я думаю, вы должны установить Copy Local = True)
  3. Добавьте к нему класс установщика с помощью логики развертывания sql
  4. Добавить вывод этого проекта в ваш проект установки
  5. Настройка необходимых пользовательских действий

Эта статья объясняет аналогичный процесс (за исключением вызовов SMO), он основан на этой статье MSDN .

Надеюсь, это поможет!

0 голосов
/ 20 ноября 2008

Простой способ сделать это - добавить эти файлы в проект развертывания.

Если щелкнуть правой кнопкой мыши проект в обозревателе решений, а затем выбрать «Просмотр»> «Файловая система», вы можете добавить эти файлы в папку приложения целевого компьютера.

Если вам нужно зарегистрировать DLL, я думаю, вы можете добавить специальное действие для этого, но я не уверен.

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...