Pregunta

Tengo un proyecto de implementación .NET. Me gustaría agregar una acción de desinstalación personalizada que verifique ciertas condiciones y, opcionalmente, cancele la desinstalación. ¿Es eso posible?

Hasta donde descubrí, solo es posible definir acciones personalizadas que no puedan influir en el instalador principal.

¿Fue útil?

Solución

La respuesta es bastante fácil pero también bastante fea.

En el punto de la acción personalizada donde quiero cancelar la desinstalación, solo lanzo una ApplicationException :

//Nono. Don't uninstall. To abort uninstall, throw an exception
throw new ApplicationException(Constants.CONST_APP_NAME + @" can't be uninstalled because the preparation hasn't been completed.");

Otros consejos

Me sorprendería si es posible. En mi experiencia, tan pronto como intentas usar el proyecto de instalación de VS para hacer algo que no se puede arrastrar y soltar en el diseñador, estás pidiendo problemas.

En otras palabras, apesta, pero no sé si el césped es más verde en el otro lado (por ejemplo, InstallShield), porque nunca lo he usado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top