AfterInstallイベントの使用
Service Installerクラスの AfterInstall
イベントを作成し、 ServiceController
を使用してサービスを開始します。
public ServiceInstaller()
{
InitializeComponent();
this.AfterInstall += new InstallEventHandler(ServiceInstaller_AfterInstall);
}
void ServiceInstaller_AfterInstall(object sender, InstallEventArgs e)
{
ServiceController sc = new ServiceController(serviceInstaller1.ServiceName);
sc.Start();
}
Committedイベントを使用する
public ServiceInstaller()
{
InitializeComponent();
this.Committed += new InstallEventHandler(ProjectInstaller_Committed);
}
void ProjectInstaller_Committed(object sender, InstallEventArgs e)
{
ServiceController sc = new ServiceController(serviceInstaller1.ServiceName);
sc.Start();
}
Or you can override OnCommitted event
protected override void OnCommitted(System.Collections.IDictionary savedState)
{
base.OnCommitted(savedState);
new ServiceController(serviceInstaller1.ServiceName).Start();
}
上記以外の場合は下記をご確認ください
- インストーラの開始タイプ:自動
- アカウント:ローカルシステム
サービスインストーラ以外にも、上記のサービスインストーラのプライマリ出力を与えて作成したセットアッププロジェクトが必要です。

セットアップでは、サービスインストーラのプロジェクト出力を提供することによって、少なくともインストール時にカスタムアクションを作成します。

より多くの情報からのここに。これがあなたのお役に立てば幸いです。