2011-11-22 8 views
5

Iba a utilizar Click Once para mi proyecto F # pero parece que esto no es compatible con VS2010. ¿Hay alguna manera de hacerlo funcionar? Si no, ¿cuál sería una alternativa?¿Es posible usar la implementación de clic una vez con F #?

La aplicación será utilizada por personas de ventas en Windows 7 tabletas sin conexión a Internet.

Mi pensamiento era utilizar ClickOnce para que pudieran comprobar si hay actualizaciones cada mañana/tarde (donde tienen Internet) antes de ir a hacer Sales (sin Internet)

+0

Si esta es una característica que desea ver en futuras versiones de Visual Studio, puede votarla aquí: 'http: // visualstudio.uservoice.com' – pblasucci

Respuesta

5

No hay apoyo a nivel IDE integrado para ClickOnce en proyectos F #, sin embargo ...

Un posible enfoque es enviar una aplicación C# a través de ClickOnce, pero ponga toda su lógica importante en un proyecto F # al que hace referencia el shell C# (principalmente vacío). Lo he hecho varias veces en el pasado, y ha funcionado bastante bien.

Por otra parte, el marco .NET proporciona MAGE (y su equivalente GUI MAGEUI) para la creación y edición de ClickOnce manifiesta fuera de Visual Studio. El uso de estas herramientas, aunque viable, definitivamente no se siente tan "suave" como el equivalente IDE integrado.

Finalmente, está ClickOnceMore, que dice que cumple la misma función que MAGEUI, pero con un mejor conjunto de características. Personalmente, nunca lo he usado, así que no puedo comentar. Pero ahí lo tienes.

4

Uso this F# script para automatizar las llamadas a la línea de comandos mage.exe para crear un paquete ClickOnce para mi proyecto F #. Primero usé MAGEUI para compilar el archivo * .application y de forma manual, el script simplemente actualiza la lista de archivos y el número de compilación, y crea el archivo zip.

2

Tuve problemas para implementar una aplicación basada en F # con ClickOnce. Finalmente lo hice funcionar. La clave que me faltaba era la siguiente:

El compilador fsc.exe agrega un manifiesto de Win32 al EXE de forma predeterminada. Esto rompe la implementación de ClickOnce como se describe en here. La página de aplicación VS2010 para aplicaciones F # no tiene una opción para "Crear aplicación sin manifiesto". Sin embargo, la página Build tiene un campo "Other flags". Añadí '--nowin32manifest'. Bang ... mi implementación de ClickOnce comenzó a funcionar.

+0

Este bit fue crucial para mí. Este no fue el único inconveniente, pero debe resaltarse según sea necesario. – mt99

Cuestiones relacionadas