Zapytanie, czy usługa Windows jest wyłączona (bez korzystania z Rejestru)?

Czy istnieje metoda .NET (C #) lub wywołanie interfejsu API, którego mogę użyć do zapytania, czy usługa Windows jest wyłączona? Odpowiedni artykuł MSDNjest tutaj.

Chcę uniknąć bezpośredniego zapytania do rejestru. Poniżej znajduje się część kodu, którego używam teraz (i działa). Szukam jednak czegoś bardziej eleganckiego i mniej inwazyjnego.

<code>const String basepathStr = @"System\CurrentControlSet\services\";
String subKeyStr = basepathStr + servicenameStr;

using (RegistryKey key = Registry.LocalMachine.OpenSubKey(subKeyStr))
{
    return (int) key.GetValue("Start");
}
</code>

Znalazłempodobne pytanie ale miałem nadzieję na lepszą odpowiedź, ponieważ odpowiedzi są prawdopodobnie nieaktualne (minęły 3 lata).

questionAnswers(6)

yourAnswerToTheQuestion