Menubar

martes, 24 de febrero de 2015

¿Cómo detectar que programa está asociado al protocolo mailto?

Por J. Manuel Mar H. Editar
Compartir en Facebook
Compartir en Twitter
Compartir en MeWe
Enviar a Reddit
Guardar en Internet archive
Guardar en  archive.today
Enviar por email
Netscape composer  Antes que nada me gustaría aclarar que este blog no es para aprender a programar, pues para ello hay otros blogs/webs y muy buenas en realidad, no tiene caso duplicar esfuerzos. Pero si me gustaría publicar de vez en cuando algunos trucos y códigos fuente asociados a los proyectos en los que estoy laborando; como mencionaba en otro post tengo una librería que engloba muchísimas funciones ya listas para ser usadas, pueden hacer uso de ella si lo desean.

Publicidad

  Sin embargo les quiero mostrar un pequeño truquito sobre como obtener la ruta del programa asociado al protocolo mailto, este al ser invocado abre la ventana del editor de correo predeterminado, la pregunta es: ¿y cuál es el programa que llama?.

Public Function getMailtoApp() As String

  Dim ret As Long, key As Microsoft.Win32.RegistryKey = Microsoft.Win32.Registry.ClassesRoot
  Dim rtn As String = "", secondKey As String = ""

  key = key.OpenSubKey("mailto\Shell\Open\Command")

  If key IsNot Nothing Then
 
    secondKey = key.GetValue("").ToString().Trim

    If secondKey.IsNullOrEmpty(secondKey) = False Then

      rtn = secondKey.Trim
      rtn = System.Text.RegularExpressions.Regex.Match(rtn, "\""(.*?)\""").Groups(0).Value

    End If

  End If

  rtn = rtn.Trim
  If rtn.StartsWith(Chr(34)) = True Then rtn = rtn.Substring(1, rtn.Length - 1)
  If rtn.EndsWith(Chr(34)) = True Then rtn = rtn.Substring(0, rtn.Length - 1)

  Return rtn

End Function

  Como podemos ver, esta función nos retorna la ruta del programa asociado al protocolo mailto, de esa manera podemos saber que programa se invoca. Por supuesto, esta es una función de muestra, en  la librería antes mencionada se encuentra una función mucho más amplia, pues no solo permite obtener la ruta del protocolo (aplicación), sinó las rutas de programas asociados a un tipo de archivo, visiten el post para más información.

 ¿Te gustó este post?, entonces si lo deseas puedes apoyarnos para continuar con nuestra labor, gracias.



Licencia de Creative Commons Esta obra está bajo una licencia de Creative Commons Reconocimiento 4.0 Internacional, haga clic aquí para conocer más detalles.


Compartir:



Danos tu voto
Comunidad Kynamio
Directorio de blogs, ¡agrega el tuyo!
Programas para el mantenimiento de Windows
Blog de seguridad informatica