Ответ 1
Я раньше был на этом пути, и, к сожалению, вам нужно создать пул приложений вручную или написать Custom Action для управления этим для вас.
В дополнение к вопросу Grzenio в комментариях ниже:
"Не могли бы вы дать мне подсказку, с чего начать поиск классов кода/помощника? И поддерживаете ли вы проект проекта веб-установки или используете стандартный проект установки приложений?"
Я добавил новый проект под названием InstallHelper
к решению, содержащему проект установки. В этом проекте я создал класс под названием InstallActions
, который происходит из:
System.Configuration.Install.Installer
(MSDN).
Существует четыре метода, которые вы можете переопределить в базовом классе Installer
, чтобы вы могли указывать настраиваемые действия в зависимости от того, находитесь ли вы на этапах установки, фиксации, удаления или отката при запуске программы установки.
Я также добавил несколько диалоговых окон текстовых полей в пользовательский интерфейс проекта установки. Вход и состояние, записанные из этих диалогов, передаются вашему пользовательскому действию установки через словарь. то есть:.
using System.Collections.Specialized;
using System.ComponentModel;
using System.Configuration.Install;
using System.Windows.Forms;
namespace InstallHelper
{
[RunInstaller(true)]
public partial class PostInstallActions : Installer
{
public override void Install(IDictionary state)
{
base.Install(state);
// Do my custom install actions
}
public override void Commit(IDictionary state)
{
base.Commit(state);
// Do my custom commit actions
}
public override void Uninstall(IDictionary state)
{
base.Uninstall(state);
// Do my custom uninstall actions
}
public override void Rollback(IDictionary state)
{
base.Uninstall(state);
// Do my custom rollback actions
}
}
}
Чтобы добавить проект пользовательских действий в проект установки, откройте редактор/Редактор настраиваемых действий и укажите результат проекта InstallHelper
.
Это основы, и вы должны начать. Проект Web Setup также поддерживает пользовательские действия и дополнительные диалоговые окна ввода пользователем, поэтому вы можете повторно использовать свой существующий проект в дополнение к пользовательскому действию.