Abfragen, ob ein Windows-Dienst deaktiviert ist (ohne die Registrierung zu verwenden)?

Gibt es eine .NET (C #) -Methode oder einen API-Aufruf, mit der ich abfragen kann, ob ein Windows-Dienst deaktiviert ist? Der relevante MSDN-Artikelist hier.

Ich möchte vermeiden, die Registrierung direkt abzufragen. Unten ist ein Teil des Codes, den ich gerade verwende (und der funktioniert). Ich suche jedoch etwas eleganteres und weniger invasives.

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

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

Ich habe eine gefundenähnliche Frage aber ich hatte auf eine bessere antwort gehofft, da die antworten vermutlich veraltet sind (3 jahre sind vergangen).

Antworten auf die Frage(6)

Ihre Antwort auf die Frage