¿Cómo desinstalo un servicio .NET de Windows, si los archivos de servicio ya no existen?
Instalé un servicio de Windows .NET usando InstallUtil. Desde entonces eliminé los archivos pero olvidé ejecutar
InstallUtil /u
primero. Por lo tanto, el servicio todavía figura en la MMC de servicios.
¿Tengo que ingresar al registro? ¿O hay un mejor camino?
windows
windows-services
installer
Thomas Jespersen
fuente
fuente
Respuestas:
Tienes al menos tres opciones. Los he presentado en orden de preferencia de uso.
Método 1 : puede usar la herramienta SC (Sc.exe) incluida en el Kit de recursos. (incluido con Windows 7/8)
Abra un símbolo del sistema e ingrese
El fragmento de ayuda de la herramienta sigue:
Método 2 - use delserv
Descargue y use la utilidad de línea de comandos delserv. Esta es una herramienta heredada desarrollada para Windows 2000. En los cuadros actuales de Windows XP, esto fue reemplazado por sc descrito en el método 1.
Método 3 : eliminar manualmente las entradas del registro (tenga en cuenta que esto falla en Windows 7/8)
Los servicios de Windows están registrados con la siguiente clave de registro.
Busque la subclave con el nombre del servicio debajo de la clave referida y elimínela. (y es posible que deba reiniciar para eliminar completamente el servicio de la lista de Servicios)
fuente
<Failed to Read Description. Error Code: 2>
Desde el símbolo del sistema, use la utilidad de Windows "sc.exe". Ejecutarás algo como esto:
fuente
Notas sobre el uso de "sc delete" en Windows 8:
1) Abra una ventana 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, usé "sc delete gupdate" cuando, en Servicios, decía "Google Update (gupdate)"]
fuente
Algunas personas mencionan
sc delete
como respuesta. Así es como lo hice, pero me tomó un tiempo encontrar el<service-name>
parámetro.El comando
sc query type= service
(nota, es muy particular con el formateo, el espacio antes del "servicio" es necesario) generará una lista de los servicios de Windows instalados, completo con su nombre calificado para ser usado con elsc delete <service-name>
comando.La lista es bastante larga, por lo que puede considerar canalizar el resultado a un archivo de texto (es decir
>> C:\test.txt
) y luego buscarlo.El
SERVICE_NAME
es el que se usa con elsc delete <service-name>
comando.fuente
sc query
como está predeterminadotype= service
.Eliminar el servicio de Windows a través del registro
Es muy fácil eliminar un servicio del registro si conoce la ruta correcta. Así es como hice eso:
Ejecute Regedit o Regedt32
Vaya a la entrada del registro "HKEY_LOCAL_MACHINE / SYSTEM / CurrentControlSet / Services"
Busque el servicio que desea eliminar y elimínelo. Puede mirar las teclas para saber qué archivos estaba usando el servicio y eliminarlas también (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 eliminar
También puede crear servicio utilizando el siguiente comando
sc crear "MorganTechService" binpath = "C: \ Archivos de programa \ MorganTechSPace \ myservice.exe"
Nota: es posible que deba reiniciar el sistema para actualizar la lista en el administrador de servicios.
fuente
Si desea utilizar una herramienta para ello, puede utilizar Process Hacker
Formulario para crear el servicio:
Menú contextual en un servicio para eliminarlo:
Encuentro que Process Hacker es una herramienta más conveniente para administrar los procesos y servicios de Windows que el propio Taskmgr.exe de Windows. Especialmente en Windows XP, donde no puede acceder a los servicios desde el administrador de tareas.
fuente
Necesitaba reinstalar mi servicio Tomcat, lo que significaba eliminarlo primero. Esto funcionó para mí:
(edite el archivo t.txt, busque en la lista y encuentre el servicio tomcat. Se llama Tomcat7)
SIN EMBARGO, el comando de consulta no funcionó la primera vez, porque el servicio tomcat no se estaba ejecutando. Parece que solo enumera los servicios que se están ejecutando. Tuve que iniciar el servicio y ejecutar el comando de consulta nuevamente.
fuente
state
parámetroSi los archivos originales Service .InstallLog y .InstallState 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 complicado, pero funcionó en una instancia particular para mí.
fuente
Puede intentar ejecutar Autoruns , lo que le evitaría tener que editar el registro a mano. Esto es especialmente útil cuando no tiene los permisos necesarios.
fuente
Primer paso: muévase al directorio donde está presente su servicio
Comando: cd c: \ xxx \ aaa \ service
2do Paso: Ingrese el siguiente comando
Comando: C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ InstallUtil.exe service.exe \ u
Aquí service.exe es su exe de servicio y lo desinstalará. verá el mensaje "La desinstalación se ha completado".
Si desea instalar un servicio, elimine \ u en el comando anterior que instalará su servicio
fuente
Descubrimos que incluso si ejecuta
sc_delete
, puede haber una entrada restante en el registro para su servicio, de modo que reinstalar el servicio da como resultado un conjunto corrupto de entradas de registro (no coinciden). Lo que hicimos fueregedit
eliminar y eliminar esta entrada sobrante a mano.Nota: ¡ShipmunkService sigue apareciendo después de sc_delete!
Luego puede reinstalar y su servicio se ejecutará correctamente. Mucha suerte a todos, y que la fuerza esté con ustedes.
fuente
Puede desinstalar su servicio de Windows mediante el símbolo del sistema también simplemente escriba este comando
fuente
-Windows+r
cmd abierto-sc YourSeviceName
Este código elimina su servicio.-Uninstal "YourService Path"
este código desinstala tu servicio.fuente