星期二, 1月 17, 2017

[C#] Windows Service - 安裝後自動執行

根據這篇筆記 [C#] Windows Service 安裝 Windows Service 後,會發現該 Service 並沒有啟動,如下圖

[C#] Windows Service - 安裝後自動執行-1

在 PorjectInstaller 內註冊 AfterInatall Event,搭配 ServiceController 在安裝後自動啟動 Service
using System.ServiceProcess;

namespace WalkthroughWindowsService
{
    [RunInstaller(true)]
    public partial class ProjectInstaller : System.Configuration.Install.Installer
    {
        public ProjectInstaller()
        {
            InitializeComponent();

            AfterInstall += (sender, e) =>
            {
                ServiceController sc = new ServiceController(serviceInstaller1.ServiceName);
                if (sc != null)
                    sc.Start();
            };
        }
    }
}
安裝後 Service 就會自動啟動啦

[C#] Windows Service - 安裝後自動執行-2

沒有留言:

張貼留言