Pregunta ¿Cómo desinstalo un servicio de Windows si los archivos ya no existen?


¿Cómo desinstalo un .NET Windows Service, si los archivos del servicio ya no existen?

Instalé un servicio de Windows .NET usando InstallUtil. Desde entonces he eliminado los archivos, pero olvidé de ejecutar

 InstallUtil /u

primero. Por lo tanto, el servicio aún aparece en la lista de Servicios MMC.

¿Debo ingresar al registro? ¿O hay un mejor camino?


517
2017-10-13 14:59


origen


Respuestas:


Tienes al menos tres opciones. Los presenté en orden de preferencia de uso.

Método 1 - Puedes usar el Herramienta SC (Sc.exe) incluido en el Kit de recursos. (incluido con Windows 7/8)

Abra un símbolo del sistema e ingrese

sc delete <service-name>

Sigue el fragmento de ayuda de la herramienta:

DESCRIPTION:
        SC is a command line program used for communicating with the
        NT Service Controller and services.

delete----------Deletes a service (from the registry).

Método 2 - use delserv

Descargar y use la utilidad de línea de comando delserv. Esta es una herramienta heredada desarrollada para Windows 2000. En los cuadros actuales de Window XP, esto fue reemplazado por sc descrito en el método 1.

Método 3 - eliminar manualmente las entradas de registro (Tenga en cuenta que esto es contraproducente en Windows 7/8)

Los servicios de Windows se registran bajo la siguiente clave de registro.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

Busque la clave secundaria con el nombre del servicio bajo la clave referida y elimínela. (y es posible que deba reiniciar para eliminar completamente el servicio de la lista de Servicios)


1019
2017-10-13 15:14



Desde el símbolo del sistema, use la utilidad "sc.exe" de Windows. Ejecutarás algo como esto:

sc delete <service-name>

145
2017-10-13 15:00



Notas sobre el uso de "sc delete" en Windows 8:

1) Abra una ventana de CMD con privilegios elevados. [Windows Key-X para abrir un menú con la opción; seleccione "Símbolo del sistema (Administrador)".]
2) Use el nombre entre paréntesis de la lista en Servicios [por ejemplo, utilicé "sc delete gupdate" cuando, en Servicios, decía "Actualización de Google (gupdate)"]


25
2018-06-20 16:16



Algunas personas mencionando sc delete como una respuesta. Así es como lo hice, pero me tomó un tiempo encontrar el <service-name> parámetro.

El comando sc query type= service (tenga en cuenta que es muy particular con el formateo, el espacio antes de que "el servicio" sea necesario) mostrará una lista de los servicios de Windows instalados, completa con su nombre calificado para ser utilizado con sc delete <service-name> mando.

La lista es bastante larga, por lo que puede considerar canalizar la salida a un archivo de texto (es decir, >> C:\test.txt) y luego buscar a través de eso.

los SERVICE_NAME es el que se usa con sc delete <service-name> mando.


18
2017-09-23 15:11



Eliminar el servicio de Windows a través del Registro

Es muy fácil eliminar un servicio del registro si conoce el camino correcto. Así es como lo hice:

  1. correr Regedit o Regedt32

  2. Vaya a la entrada de registro "HKEY_LOCAL_MACHINE / SYSTEM / CurrentControlSet / Services"

  3. Busque el servicio que desea eliminar y elimínelo. Puede ver las claves para saber qué archivos estaba usando el servicio y también eliminarlos (si es necesario).

Eliminar el servicio de Windows a través de la ventana de comandos

Alternativamente, también puede usar el símbolo del sistema y eliminar un servicio usando el siguiente comando:

sc borrar 

También puedes crear un servicio usando el siguiente comando

sc create "MorganTechService" binpath = "C: \ Archivos de programa \ MorganTechSPace \ myservice.exe"

Nota: Es posible que deba reiniciar el sistema para obtener la lista actualizada en el administrador de servicios.


11
2017-09-23 16:46



Si desea utilizar una herramienta para ello, puede usar Hacker de procesos

Formulario para crear el servicio:

Process Hacker Create Service

Menú contextual en un servicio para eliminarlo:

Process Hacker Delete Service

Considero que Process Hacker es una herramienta más adecuada para administrar los procesos y servicios de Windows que el propio Taskmgr.exe de Windows. Especialmente en Windows XP, donde no se puede acceder a los servicios desde el administrador de tareas.


8
2018-02-21 06:13



Necesitaba reinstalar mi servicio de tomcat, lo que significaba primero eliminarlo. Esto funcionó para mí:

Start a command prompt window using run as administrator

sc query type= service >t.txt

(edite el archivo t.txt, busque en la lista y encuentre el servicio Tomcat. Se llama Tomcat7)

sc delete Tomcat7

SIN EMBARGO, el comando de consulta no funcionó la primera vez, porque el servicio de tomcat no se estaba ejecutando. Parece que solo muestra los servicios que se están ejecutando. Tuve que iniciar el servicio y ejecutar el comando de consulta nuevamente.


4
2018-06-16 07:55



Si los archivos Service .InstallLog e .InstallState originales todavía están en la carpeta, puede intentar reinstalar el ejecutable para reemplazar los archivos, luego use InstallUtil / u, luego desinstale el programa. Es un poco intrincado, pero funcionó en una instancia particular para mí.


3
2018-02-12 16:54