首頁 > 後端開發 > C++ > 如何用 C# 檢查 Windows 服務的狀態?

如何用 C# 檢查 Windows 服務的狀態?

DDD
發布: 2024-12-31 22:08:11
原創
358 人瀏覽過

How Can I Check the Status of a Windows Service in C#?

在C# 中驗證Windows 服務狀態

在C# 應用程式中,您可能需要檢查特定Windows 服務是否正在運行,特別是如果它在應用程式的功能中起著至關重要的作用。實現此目的的方法如下:

使用 System.ServiceProcess

要使用 Windows 服務,您可以利用 System.ServiceProcess 命名空間。將其新增至 .NET 標籤下的項目參考。

using System.ServiceProcess;
登入後複製

ServiceController:服務狀態的橋樑

ServiceController 類別充當程式碼之間的橋樑和 Windows 服務。若要建立實例,請傳遞您感興趣的服務的名稱。

ServiceController sc = new ServiceController(SERVICENAME);
登入後複製

確定服務狀態

ServiceController 物件的 Status 屬性提供服務的目前狀態。您可以使用switch 語句來處理不同的狀態:

switch (sc.Status)
{
    case ServiceControllerStatus.Running:
        return "Running";
    case ServiceControllerStatus.Stopped:
        return "Stopped";
    case ServiceControllerStatus.Paused:
        return "Paused";
    case ServiceControllerStatus.StopPending:
        return "Stopping";
    case ServiceControllerStatus.StartPending:
        return "Starting";
    default:
        return "Status Changing";
}
登入後複製

提示:

  • 使用sc.Refresh() 來擷取每次先前的最新狀態check.
  • sc.WaitforStatus()方法可以在超時時間內等待特定狀態的發生
  • 有關ServiceController 的更多信息,請參閱Microsoft 文件:https://docs.microsoft.com/en-us/dotnet/api/system.serviceprocess .servicecontroller?view=netframework-4.8

以上是如何用 C# 檢查 Windows 服務的狀態?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板