Some time we need to get specific service path and then do something you want. there are 2 way to get specific service path bellow.
private static string GetRegistData(string name)
{
string registData;
RegistryKey hkml = Registry.LocalMachine;
RegistryKey system = hkml.OpenSubKey("SYSTEM", true);
RegistryKey currentControlSet = system.OpenSubKey("CurrentControlSet", true);
RegistryKey services = currentControlSet.OpenSubKey("services", true);
RegistryKey key = services.OpenSubKey(name, true);
registData = key.GetValue("ImagePath").ToString();
return registData;
}
private static string GetServicePath(string name)
{
ManagementClass mc = new ManagementClass("Win32_Service");
foreach (ManagementObject mo in mc.GetInstances())
{
if (mo.GetPropertyValue("Name").ToString() == name)
{
return mo.GetPropertyValue("PathName").ToString().Trim('"');
}
}
return string.Empty;
}