簡體   English   中英

如何驗證Services.msc中是否存在服務

[英]How to verify whether service exists in Services.msc

我正在使用以下代碼來獲取服務的路徑...

 string ServicePath = string.Format("Win32_Service.Name=\"{0}\"", "MyService");
 var WMiObject = new ManagementObject(ServicePath);
 string PathName = (string)WMiObject.GetPropertyValue("PathName");

現在,如果服務不可用,那么調用wmiObject.getPropertyValue(“PathName”)將拋出ManagementException ..

在我的情況下,如果服務不可用,我需要分配HardCoded路徑..如何實現? 請指導......

string Name = "MyService";
ServiceController service = ServiceController
                        .GetServices()
                        .Where(s => s.ServiceName == Name).FirstOrDefault();

if(null != service)
{
    // service exists
}

您可以在WMiObject.GetPropertyValue調用周圍使用try塊,並在catch塊中分配常量值。

string PathName;
try
{
    PathName = (string)WMiObject.GetPropertyValue("PathName");
}
catch (ManagementException)
{
    PathName = "my constant path value";
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM