Windows – Force a Windows service to restart

rebootserviceswindows

I'm having problems trying to restart a Windows service (VBoxDrv, a VirtualBox driver)

net stop VBoxDrv

doesn't work (service starting or stopping error)

sc queryex vboxdrv

displays something like

SERVICE_NAME: vboxdrv 
        TYPE               : 1  KERNEL_DRIVER  
        STATUS             : 3  STOP_PENDING 
                                (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
        COD_SALIDA_WIN32   : 0  (0x0)
        COD_SALIDA_SERVICIO: 0  (0x0)
        PUNTO_COMPROB.     : 0x0
        INDICACION_INICIO  : 0x0
        PID                : 0
        MARCAS         : 

(I translated the most important words from Spanish)

Because no PID is shown, I cannot kill the process with taskkill. Tried with psexec -s to run the commands with local system privileges, same result.

So far, any time this service hangs up (which lately has been very frequently) then I'm forced to restart my PC

I'm using Win7 Pro-64 bits

Best Answer

  • That isn't a regular Windows Service, it's a kernel mode driver. Unfortunately these drivers run outside of the User space (in kernel space) and basically you (as a user) can't force it to do anything (at least without a reboot, or some other external interruption).

    Here's a nice little blog that I think does a nice job of explaining how a kernel driver is like a regular Windows service (and how it's different).

    Are you running the latest VirtualBox? Perhaps they've corrected that driver in a way that agrees with your configuration? :)