ServiceController sc = new ServiceController();
private void StartService(string s)
{
try
{
sc.ServiceName = s;
/// if service is stopped, start it
if (sc.Status == ServiceControllerStatus.Stopped)
{
//啟動類型設為自動(手動、自動、已停用)
//如果啟動類型為已停用會導致無法啟用該服務
Process.Start("sc", "config Messenger start= auto");
//因為服務的啟動類型更改會需要一點時間
//所以我先在程式中放置一個Timer設定為5000毫秒
timer1.Start();
}
}
catch (Exception e)
{
Console.WriteLine("Exception : ", e.Message);
}
}
private void timer1_Tick(object sender, EventArgs e)
{
//服務狀態設為啟用
sc.Start();
sc.WaitForStatus(ServiceControllerStatus.Running);
timer1.Stop();
}
2013年6月26日 星期三
[C#]啟用Windows服務
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言