最近安装Windows Service服务停止或卸载的时候出错了,而结果在服务列表中就一直驻留,并且系统进程一直在运行,怎么都杀不掉,最后终于找到办法了

  • 常规做法

    管理员权限运行cmd

    1
    2
    net stop service_name
    sc delete service_name

    如果还是没有用,那就继续尝试

  • 找到系统注册表,删掉服务的注册表信息,通常路径在:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 找到你的服务的名字,然后把整个文件夹删掉

    如果还是在继续运行,service列表中还显示的话

    用管理员权限打开cmd,再次运行

    1
    sc delete service_name

    如果提示 “the specified service is marked as deletion”,导致windows service不能部署,也不能被删除,使用 SC 命令也不奏效

  • 最后我们再尝试

    • 关闭所有windows service控制面板
    • 查找windows service的PID,管理员权限运行cmd
      1
      sc queryex service_name
    • 杀掉进程
      1
      taskkill /PID service_pid /f  # service_pid为上面显示的PID