Interroger si un Service Windows est désactivé (sans l'aide de la base de Registre)?

Est-il .NET (C#), la méthode ou les appels de l'API que je peux utiliser pour interroger si un Service Windows est désactivé? Pertinentes de l'article MSDN est ici.

Je veux éviter d'interroger directement le registre. Ci-dessous est une partie du code que j'utilise en ce moment (et ça marche). Cependant, je suis à la recherche de quelque chose de plus élégant et moins invasive.

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

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

J'ai trouvé un ) des nouvelles question mais je m'attendais à une meilleure réponse puisque les réponses sont probablement obsolètes (3 ans ont passé).