您好,登錄后才能下訂單哦!
如何實現C#啟動Windows服務及關閉,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
C#啟動Windows服務及關閉實例實現的步驟和使用調用的類是什么呢?讓我們來看看具體的實現:
C# 控制Windows服務的啟動與關閉
// ...... using System.ServiceProcess; // ...... /// <summary> /// Restart windows service /// </summary> /// <param name="serviceName"> ///the windows service display name</param> /// <returns> If the restart successfully ///return true else return false</returns> public static bool RestartWindowsService(string serviceName) { bool bResult = false; try { try { //C#啟動Windows服務及關閉 StopWindowsService(serviceName); Thread.Sleep(1000); } catch (Exception ex) { StartWindowsService(serviceName); Thread.Sleep(1000); StopWindowsService(serviceName); Thread.Sleep(1000); Console.WriteLine(ex.Message); } try { StartWindowsService(serviceName); Thread.Sleep(1000); } catch (Exception ex) //C#啟動Windows服務及關閉{ StopWindowsService(serviceName); Thread.Sleep(1000); StartWindowsService(serviceName); Thread.Sleep(1000); Console.WriteLine(ex.Message); } bResult = true; } catch (Exception ex) { bResult = false; throw ex; } return bResult; } //C#啟動Windows服務及關閉/// <summary> /// Start windows service /// </summary> /// <param name="serviceName"> ///the windows service display name</param> /// <returns>If the start successfully ///return true else return false</returns> public static bool StopWindowsService(string serviceName) { ServiceController[] scs = ServiceController.GetServices(); bool bResult = false; foreach (ServiceController sc in scs) { if (sc.DisplayName == serviceName) { try { sc.WaitForStatus(ServiceControllerStatus.Running, TimeSpan.FromSeconds(30)); sc.Stop(); bResult = true; } catch (Exception ex) { bResult = false; throw ex; } } } return bResult; } //C#啟動Windows服務及關閉/// <summary> /// Stop windows service /// </summary> /// <param name="serviceName">the windows ///service display name</param> /// <returns>If the stop successfully ///return true else return false</returns> public static bool StartWindowsService( string serviceName) { ServiceController[] scs = ServiceController.GetServices(); bool bResult = false; foreach (ServiceController sc in scs) { if (sc.DisplayName == serviceName) { try { sc.WaitForStatus(ServiceControllerStatus.Stopped, TimeSpan.FromSeconds(30)); sc.Start(); bResult = true; } catch (Exception ex) { bResult = false; throw ex; } } //C#啟動Windows服務及關閉 } return bResult; }
C#啟動Windows服務及關閉具體實現就向你介紹到這里,希望對你了解和學習C#啟動Windows服務及關閉有所幫助。
看完上述內容,你們掌握如何實現C#啟動Windows服務及關閉的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。