2009-04-27 16 views
5

Tengo un protocolo de URL personalizado para una aplicación en la que estoy trabajando (como se define aquí: http://msdn.microsoft.com/en-us/library/aa767914.aspx). Este protocolo funciona bien, puedo ir a Inicio -> Ejecutar y escribir:Protocolo de URL personalizado en Windows - enlaces de correo electrónico

foo:1_1 

Y mi aplicación se inicia como se esperaba. Si creo una página web que tiene un enlace de ese tipo, funciona como se espera (recibo una advertencia del navegador, pero eso no es problema). Mi problema surge cuando intento enviar un correo electrónico desde mi programa que contiene uno de estos enlaces. Gmail, en particular, parece estar excluyendo mi enlace, por lo que cuando envío un correo electrónico que contiene este enlace:

<a href='foo:1_1'>foo</a> 

me quedo con este código HTML resultante:

<a>foo</a> 

Parece quitaré mi etiqueta href, lo que supongo es porque no reconoce el protocolo. ¿Alguien tiene alguna idea de cómo puedo evitar esto? Lo probé con el servicio de correo electrónico de mi ISP, y la etiqueta no fue molestada. ¿Es esto algo con lo que voy a tener que vivir y les pido a mis usuarios que corten & pegar el enlace en el cuadro Inicio -> Ejecutar?

Respuesta

3

Después de un poco de exploración, y ver lo que hace otra aplicación, se me ha ocurrido con lo que parece una solución adecuada:

En lugar de un enlace directo a nuestro protocolo, vamos a hacer un enlace a una página en nuestro sitio donde pasamos los parámetros, esa página creará el enlace utilizando nuestro protocolo. Esta parece ser la forma en que iTunes lo hace cuando envías enlaces a través de iTunes.

+0

Curiosamente, esto parece funcionar para todos los navegadores pero IE8 (no está seguro acerca de IE7). FF y Chrome abrirán diligentemente el enlace, pero IE8 solo me da un error genérico de "Internet Explorer no puede mostrar la página web". ¡Bah! – Jonas

Cuestiones relacionadas