Byłem już na tej drodze i niestety trzeba ręcznie utworzyć pulę aplikacji lub napisać działanie niestandardowe, aby zająć się tym za Ciebie.
nawiązaniu do pytania Grzenio w komentarzach poniżej:
„Czy możesz dać mi wskazówkę, gdzie zacząć szukać dla klas Kod/pomocniczych I czy zachować swój projekt projekt instalacji sieci Web, lub po prostu użyć standardowy projekt instalacji aplikacji? "
Dodałem nowy projekt o nazwie InstallHelper
do rozwiązania zawierającego projekt instalacji. W tym projekcie utworzyłem klasę o nazwie InstallActions
, która pochodzi od:
System.Configuration.Install.Installer
(MSDN).
Dostępne są cztery metody, które można przesłonić w klasie bazowej Installer
, aby umożliwić określanie niestandardowych działań w zależności od tego, czy są w fazie instalacji, zatwierdzania, odinstalowywania lub wycofywania, gdy instalator jest uruchomiony.
Dodałem również kilka dialogów w oknach tekstowych do interfejsu użytkownika projektu ustawień. Dane wejściowe i stan przechwycone z tych dialogów są przekazywane do niestandardowej akcji instalacji za pośrednictwem słownika. tj .:
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
}
}
}
Aby dodać swój projekt akcję niestandardową do projektu instalacji, otwórz akcje niestandardowe widza/edytor i określić wyjście z projektu InstallHelper
.
To jest podstawa i powinno zacząć. Projekt konfiguracji sieci obsługuje również niestandardowe akcje i dodatkowe okna dialogowe wprowadzania danych użytkownika, więc możesz chcieć ponownie użyć istniejącego projektu, oprócz niestandardowej akcji.
Używam Custom Actions, aby to zrobić w .net 2.0 –
Pozdrawiam za odpowiedź. Czy możesz dać mi wskazówkę, gdzie zacząć szukać klasy kodu/pomocnika? Czy utrzymujesz swój projekt Web Setup Project, czy po prostu używasz standardowego projektu instalacji aplikacji? – Grzenio
Początkowo przyjrzałem się projektowi instalacji sieci Web, ale zdecydowałem się użyć standardowego projektu instalacji, ponieważ moje wymagania obejmowały również konieczność zainstalowania usługi Windows i utworzenia strony internetowej. – Kev