Это решение использует проект установки в Visual Studio 2008 и использует встроенный класс Installer
, найденный в .NET Framework. Другие ссылки можно найти здесь и здесь .
Вот основной план того, что делать:
- Добавить экземпляр класса
Installer
в проект, который будет установлен на ПК клиента
- Добавить проект установки, который установит приложение на ПК клиента
- Определение действий в рамках проекта установки, которые будут выполняться в определенные моменты во время установки
- Переопределите соответствующие методы в классе
Installer
, чтобы получить сведения о подключении к базе данных от конечного пользователя во время установки приложения
- Сохранить настройки подключения к базе данных (в случае удаления)
- Запустите пользовательский метод / класс / исполняемый файл в контексте установщика и сделайте то, что должно быть сделано
Вот пошаговое руководство:
- Добавить
Installer
класс: класс Installer
должен быть размещен внутри приложения для установки. В обозревателе решений Visual Studio выберите приложение для установки и щелкните пункты меню «Проект-> Добавить новый элемент-> Класс установщика». Это добавит класс установщика по умолчанию под названием «Installer1».
- В обозревателе решений Visual Studio выберите проект установки и щелкните его правой кнопкой мыши. Выберите «Вид-> Пользовательские действия», чтобы отобразить пользовательские действия, выполняемые во время установки.
- В окне «Настраиваемые действия» добавьте настраиваемые действия для «Установить» и «Удалить»
- Перейдите в класс
Installer
("Installer1") и переопределите OnBeforeInstall
.
Вот псевдокод того, как все будет работать:
[Installer1.cs]
protected override void OnBeforeInstall(IDictionary savedState)
{
base.OnBeforeInstall(savedState);
MessageBox.Show("OnBeforeInstall: " + GetProperties(savedState));
using (ConnectionDialog d = new ConnectionDialog())
{
d.ShowDialog();
savedState["database"] = d.Database;
savedState["user"] = d.User;
savedState["password"] = d.Password;
savedState["integrated"] = d.Integrated;
}
}
Экземпляр IDictionary
, передаваемый установщиком, представляет собой набор пар ключ / значение, которые пользователи могут заполнять соответствующими данными. Эта же информация передается в другие методы, такие как OnBeforeUninstall
, которые разработчик может использовать для отключения базы данных, изменения отката или чего-либо еще.