Via the registry you won't be able to tell what state a service is currently in, only it's start-up mode setting (manual, automatic, disabled, etc.). This will be held in a key named "Start" within the service's branch in the registry.
Possible values:
+-------+----------------------------------------------------------------------------------------------------------------------------------+
| Value | Description |
+-------+----------------------------------------------------------------------------------------------------------------------------------+
| 0 | Boot: Loaded by kernel loader. Components of the driver stack for the boot (startup) volume must be loaded by the kernel loader. |
| 1 | System: Loaded by I/O subsystem. Specifies that the driver is loaded at kernel initialization. |
| 2 | Automatic: Loaded by Service Control Manager. Specifies that the service is loaded or started automatically. |
| 3 | Manual: The service does not start until the user starts it manually, such as by using Services or Devices in Control Panel. |
| 4 | Disabled: Specifies that the service should not be started. |
+-------+----------------------------------------------------------------------------------------------------------------------------------+
If you're looking to get the current status of a service, consider using the sc
command, or WMI to check the current status of a service.
This is perfect what I'm trying to do is query the registry for info, thank you – 13aal – 2017-04-12T19:40:34.187