I've got a phantom/ghost service. The executable is not running. Service Control Manager thinks it's running. Something needs that service to be stopped, it asks Windows ,which will happily continue claiming it's running. (It's not.).
How can I force windows, at a very low level, to think it's no longer running? Override what scm thinks?
Trying to stop it (via powershell, UI, using the old net
, or sc
tool) gets error 1061 or equivalent. Obviously, you can't communicate with a process that doesn't exist.
Trying to disable/enable it has no effect, it stays as status 'running'.
Trying to stop via stop-service
gets a funny message about a service that can't be stopped on computer ''
, obviously there's no computer the program is running on, so it's probably printing the program name of NULLPTR
.
sc.exe queryex servicename
and the SCM registry export for the service, i.e. under:HKLM\SYSTEM\CurrentControlSet\Services\servicename
Thanks.