1. ホーム
  2. .net

[解決済み] インストール後すぐに.NET Windows Serviceを起動させるには?

2023-04-02 05:25:30

質問

service.StartType = ServiceStartMode.Automatic の他に、インストール後に私のサービスが開始されません。

解決方法

ProjectInstallerに以下のコードを挿入してください。

protected override void OnAfterInstall(System.Collections.IDictionary savedState)
{
    base.OnAfterInstall(savedState);
    using (var serviceController = new ServiceController(this.serviceInstaller1.ServiceName, Environment.MachineName))
        serviceController.Start();
}

ScottTx と Francis B に感謝します。

どのように解決するのですか?

InstallUtil プロセスから発生するイベントに応答して、サービス実行ファイル内からすべてを行うことができます。 OnAfterInstall イベントをオーバーライドして ServiceController クラスを使用し、サービスを開始します。

http://msdn.microsoft.com/en-us/library/system.serviceprocess.serviceinstaller.aspx