ServiceInstaller.Uninstall(IDictionary) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Desinstala el servicio eliminando del Registro la información acerca de él.
public:
override void Uninstall(System::Collections::IDictionary ^ savedState);
public override void Uninstall (System.Collections.IDictionary savedState);
override this.Uninstall : System.Collections.IDictionary -> unit
Public Overrides Sub Uninstall (savedState As IDictionary)
Parámetros
- savedState
- IDictionary
IDictionary que contiene la información de contexto asociada a la instalación.
Excepciones
No se pudo abrir el Administrador de control de servicios.
o bien
El sistema no pudo obtener un identificador para el servicio.
Comentarios
Desinstale primero los intentos de detener el servicio antes de desinstalarlo. Si no se puede detener el servicio, no se detecta ninguna excepción y el método continúa con la eliminación del servicio.
Normalmente, no llamará a los métodos en ServiceInstaller el código; por lo general, la utilidad de instalación solo los llama. InstallUtil se usa para desinstalar servicios, así como instalarlos; la desinstalación toma un modificador en la llamada de línea de comandos.
La rutina de desinstalación de una aplicación mantiene información automáticamente sobre los componentes que se desinstalan mediante el instalador del Installer.Contextproyecto. Esta información de estado, que se pasa como Uninstall parámetro savedState
, se actualiza continuamente a medida que la ServiceProcessInstaller instancia y la utilidad instala cada ServiceInstaller instancia. Por lo general, no es necesario que el código modifique esta información de estado explícitamente.
Para todas las clases derivadas de la Installer clase , el estado de la Installers colección debe ser el mismo en los Install métodos y Uninstall . Sin embargo, puede evitar el mantenimiento de la colección entre los Install métodos y Uninstall si agrega instancias de instalador a la colección en el Installers constructor de clase del instalador personalizado.
No hay ningún mecanismo de reversión para la desinstalación, por lo que si un servicio no se desinstala, esto no afecta a los demás servicios (normalmente dentro del mismo proyecto de instalación) que se desinstalan.