ver smart puedo porque mac instalar habilitar cómo con como chrome blim .net silverlight deployment uninstall out-of-browser

.net - smart - Desinstalar programáticamente la aplicación Silverlight fuera del navegador



silverlight en mi pc con windows (5)

No estoy seguro de que puedas hacer esto programáticamente.

Una opción es hacer que el usuario use Agregar / Quitar programas para eliminarlo.

Otra opción es utilizar la opción de instalación silenciosa para eliminarla (enlace - http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2010/03/24/silverlight-4-rc-and-the-silent-installation). aspx ) pero implica llamadas de interoperabilidad COM.

Micro.

¿Cómo puedo desinstalar la aplicación Silverlight 4 fuera del navegador mediante programación en lugar de usar el menú contextual (por ejemplo, si deseo reemplazar el menú contextual)?

Editar

He encontrado en "Instalación de aplicaciones de Silverlight sin el navegador involucrado" cómo desinstalar llamando a la línea de comandos:

"% ProgramFiles% / Microsoft Silverlight / sllauncher.exe" / uninstall /origin:silverlight.net/content/samples/apps/...

Esto se puede usar en:

dynamic cmd = AutomationFactory.CreateObject("WScript.Shell"); cmd.Run(run, 1, true);

¿Hay alguna solución mejor?


La solución que mencionaste sigue siendo la única forma en que sé hacerlo. Es un buen toque poner una Application.Current.MainWindow.Close(); después de eso, ya que la aplicación seguirá ejecutándose después de realizar la desinstalación.

Bagazo


Bastante cierto de que esto no es posible sin recurrir a la interoperabilidad COM como Mike dice, también preguntaría si es una buena idea ya que:

1) Eliminar la opción de desinstalación sin duda molestará a muchos usuarios y es una mala práctica. 2) ¿Dice que está buscando implementar un nuevo menú contextual? A menos que sea una aplicación LOB, desconfío de esto ya que muchos usuarios no estarán acostumbrados a acceder a los menús contextuales en una aplicación web que para mí es HCI deficiente. Si se trata de una aplicación LOB, entonces Agregar / quitar programas sería una solución correcta?



Mira mi solución aquí: no se puede desinstalar la aplicación SIlverlight Out Of Browser Programemente utilicé el código en la aplicación de consola que ejecutaba la aplicación silverlight que estaba desinstalando. Silverlight extrajo el EXE como un recurso a uno de los directorios y luego lo ejecutó usando algo como lo siguiente:

using (dynamic shell = AutomationFactory.CreateObject("WScript.Shell")) { shell.Run(@"C:/Users/yourusername/AppData/update.exe xapNameToUninstall"); }