Para averiguar cuál es el cliente predeterminado de correo electrónico, encontré la misma información una y otra vez: Mire la cadena predeterminada en HKLM\Software\Clients\Mail
. (Véase, por ejemplo, este related question)¿Cómo y dónde exactamente se establece el cliente de correo electrónico predeterminado en el registro?
Sin embargo, esto no parece ser cierto para todos los sistemas operativos y/o situaciones: Tengo dos máquinas que funcionan con Win7 de 64 bits, llamémoslos A y B. A tiene Outlook 2010 de 64 bits y Thunderbird 3 de 32 bits instalado. B tiene Outlook 2007 32bit y Thunderbird 3 32bit instalados. Tanto A como B tienen configurado Thunderbird como su cliente de correo predeterminado.
Sin embargo, el estado del registro no es como esperaba:
en la máquina A, tanto HKLM\Software\Clients\Mail
y HKLM\Software\Wow6432Node\Clients\Mail
tienen una cadena vacía como el valor de cadena predeterminado. En B, ambas claves contienen Microsoft Outlook
como el valor de cadena predeterminado, lo que es claramente incorrecto. La investigación adicional reveló que el valor correcto parece estar escrito en HKCU\Software\Clients\Mail
en ambas máquinas.
Quiero que mi aplicación maneje esto correctamente para todos los casos. Tiene bastante sentido que Win7 ahora parezca tener un cliente de correo predeterminado por separado para cada usuario, pero parece bastante inconsistente. Al observar la gran cantidad de información que apunta a HKLM\Software\Clients\Mail
, parece obvio que las versiones anteriores de Windows manejaron esto de manera diferente y siempre escribieron en esa ubicación. ¿Cuándo cambió esto? ¿El valor incorrecto en la máquina B tiene algún significado? Si no, ¿por qué se escribe allí en primer lugar? ¿La combinación de clientes de correo electrónico de 64 bits y 32 bits en la misma computadora cambia algo?
¡Agradecería mucho si alguien compartiera información confiable o documentación que explique este tema! Tal vez hay una función de API Win32 que devuelve el valor correcto?
"Win7 ahora parece contener un cliente de correo predeterminado por separado para cada usuario" -> sí; "las versiones anteriores de Windows manejaron esto de manera diferente" -> sí, mientras que creo que ya era el caso en Vista –