La larga Exec es la instalación de .NET 3.5, y el guión a cabo se basa fuera éste: http://www.blackhillsoftware.com/blog/2006/06/26/using-innosetup-with-the-dotnet-framework/¿Cómo se hace para que Inno Setup no parezca congelado mientras se realiza un Exec largo?
El problema es que se trata de utilizar "ewWaitUntilTerminated" porque tenemos que capturar el código de salida. Se ha empeorado por el hecho de que lo estamos ejecutando/pasivo/norestart para que sea menos trabajo por parte del usuario (¿Quizás no deberíamos?)
La opción más fácil que se me ocurre es ocultar el mientras está instalando .NET y mostrándolo nuevamente después de que está hecho, pero no estoy seguro de cómo hacerlo.
La solución ideal sería mostrar una página de progreso, pero no parece que sea posible, ya que tendríamos que volver de inmediato, pero de alguna manera aún recibir una notificación cuando el proceso finalice y capturar el código de salida de lo contrario, solo tendríamos una barra de progreso eterno.
¿Alguna idea sobre cómo hacerlo?
Editar: Minimizar probablemente sea mejor, pero no estoy seguro de cómo hacerlo. Mostramos un mensaje que informa al usuario que el proceso puede tomar de 10 a 20 minutos, sin embargo, el problema es que el formulario de configuración principal está completamente congelado, no se puede mover, minimizar o hacer nada con él. También en ejecución/pasivo, el instalador de .NET no muestra ningún progreso durante un buen minuto o dos en una máquina más lenta.
Después de haber pasado una tarde instalando una demostración de una aplicación que no comenzó advirtiéndome que querría .NET 3.5 hasta después del primer reinicio obligatorio ... digamos que los usuarios pueden ponerse irritados por un largo inesperado subinstalaciones. Sin embargo, no tengo una respuesta técnica. – RBerteig
Luego .NET también requirió un reinicio, después de lo cual la configuración de la aplicación original se olvidó de que se estaba ejecutando, y se tuvo que encontrar manualmente en una carpeta temporal y volver a ejecutar para instalar la aplicación. – RBerteig
Sí, informamos a ese usuario y les permitimos cancelar antes de que se instale el marco, y suprimimos el reinicio del instalador .net y lo capturamos en el código de retorno para reiniciar nosotros mismos – Davy8