C#啟動Windows服務(wù)及關(guān)閉實例實現(xiàn)
作者:小甜甜 
  C#啟動Windows服務(wù)及關(guān)閉實例實現(xiàn)是如何做到的呢?那么本文就向介紹C#啟動Windows服務(wù)及關(guān)閉實例實現(xiàn)的具體的代碼。
 C#啟動Windows服務(wù)及關(guān)閉實例實現(xiàn)的步驟和使用調(diào)用的類是什么呢?讓我們來看看具體的實現(xiàn):
C# 控制Windows服務(wù)的啟動與關(guān)閉
C#啟動Windows服務(wù)及關(guān)閉具體實現(xiàn)就向你介紹到這里,希望對你了解和學(xué)習(xí)C#啟動Windows服務(wù)及關(guān)閉有所幫助。
- // ......
 - 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服務(wù)及關(guān)閉
 - 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服務(wù)及關(guān)閉
 - {
 - 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服務(wù)及關(guān)閉
 - /// <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服務(wù)及關(guān)閉
 - /// <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服務(wù)及關(guān)閉
 - }
 - return bResult;
 - }
 
【編輯推薦】
責(zé)任編輯:仲衡 
                    來源:
                    百度空間
 














 
 
 
 
 
 
 