Tengo una aplicación ClickOnce, y necesito la capacidad de pasarle parámetros de URL. Por ejemplo, un usuario podría hacer clic en una URL del formulario "http://foo.bar/MyApp.application?flavor=grape", y esto iniciará mi aplicación, pasando la consulta "? Flavor = grape".Pasar parámetros de URL a una aplicación ClickOnce en cualquier navegador
Desafortunadamente, parece que esto solo funciona en IE recién sacado de la caja. En Firefox y Chrome, el usuario debe instalar complementos para que la implementación de ClickOnce funcione. Mis usuarios trabajan en un ambiente corporativo restrictivo, y no tienen permitido instalar complementos, ni nada por el estilo (ClickOnce sí funciona para ellos). Entonces qué hago ?
Un truco que podría pensar es registrar mi aplicación como manejador de archivos para una extensión de archivo suficientemente única, como ".bugmaster". Entonces, o así fue mi teoría, podría hacer que mi servidor web genere un archivo llamado "flavor_grape.bugmaster"; el usuario hará clic en una URL que apunta a ese archivo, luego elija "Ejecutar" en lugar de "Guardar", y esto iniciará mi aplicación, que luego analizará el nombre del archivo para los parámetros de la URL. Desafortunadamente, este enfoque tampoco funciona. Funciona perfectamente bien cuando el archivo "flavor_grape.bugmaster" se abre desde el sistema de archivos local, pero, por alguna razón, esto no funciona cuando el usuario intenta abrir el archivo desde un navegador.
¿Alguien tiene alguna otra idea?
¡Guau! Aprendes cosas nuevas todos los días. He estado trabajando con ClickOnce por un tiempo, y de alguna manera he perdido esta opción. @Marty Dill: ¿Has usado esta técnica en el pasado? – RLH
¡Sip! Ver mi segundo último párrafo. Lo usé para generar setup.exe que contiene información sobre a qué servidor conectarse. Una vez que el sistema estaba en funcionamiento, funcionó bastante bien. –
Este es un buen truco, pero desafortunadamente necesito un número ilimitado de opciones (bueno, supongo que técnicamente es limitado, pero hay más de 1e10), y mi aplicación no necesita ser firmada. Aunque probablemente podría configurar el servicio web para que firme la aplicación también. Sin embargo, es una idea interesante, ¡gracias! – Bugmaster