2011-06-29 17 views

Respuesta

10

Esto se debe a que el artículo de Microsoft es un poco engañoso. Lo que explica este artículo es cómo crear un instalador personalizado aplicación. No está describiendo cómo cambiar su aplicación para que tenga un diálogo de instalador personalizado, en lugar del estándar que es parte del sistema.

Para crear un instalador de cliente, cree una aplicación separada similar a la que se describe en el código del artículo de MSDN. Deberá agregar al código de la aplicación principal el código en el paso 5, sin embargo, modifique el código para buscar el manifiesto de la aplicación desde su punto de instalación. Compile la aplicación y distribúyala a sus usuarios como mejor le parezca.

Aunque tendrá que administrar la distribución de una aplicación de instalación inicial, puede implementar este proceso en su aplicación para actualizaciones. En ese caso, siga las instrucciones en el artículo. Como mencioné anteriormente, querrá verificar sus actualizaciones cuando y como lo desee. Una vez que se necesita una actualización, su aplicación puede llamar al código en el paso 5 desde su aplicación ClickOnce.

+0

Gracias. Realmente es engañoso. –

6

Tuve una conversación con el chico de ClickOnce en Microsoft acerca de esto. Para ser sincero, me molestó porque realmente no proporcionan suficiente orientación al respecto. Dijo esto: tienes que crear un archivo exe, pero debes poner controles para asegurarte de que .NET Framework esté instalado antes de ejecutar el exe. Así que cree su propio ejecutable y ejecútelo como setup.exe: aquí es donde se encuentra el código personalizado para instalar la aplicación.

Creo que al final quiso decir que tenía que escribir algún tipo de bootstrapper en código que no sea .NET (como C) que busca el .NET Framework y lo instala si es necesario. Luego se activará otro exe que es el código administrado que tiene sus llamadas al InPlaceHostingManager y la interfaz de usuario personalizada en él.

+1

Veo, bueno, tal vez la solución es utilizar ClickOnce para dar a mis clientes una aplicación de configuración (al igual que Google está utilizando ClickOnce para distribuir la configuración de Chrome (no Chrome). Más tarde para utilizar la aplicación para iniciar InPlaceHostingManager. –