Per scoprire qual è il client di posta elettronica predefinito, ho trovato le stesse informazioni più e più volte: Guarda la stringa predefinita in HKLM\Software\Clients\Mail
. (Si veda ad esempio questo related question)Come e dove viene impostato esattamente il client di posta elettronica predefinito nel registro?
Tuttavia, questo non sembra essere vero per tutti i sistemi operativi e/o situazioni: Ho due macchine che eseguono Win7 64 bit, chiamiamoli A e B. A ha Outlook 2010 a 64 bit e Thunderbird 3 32 bit installato. B ha installato 32 bit di Outlook 2007 e 3 bit Thunderbird 3. Sia A che B hanno Thunderbird impostato come client di posta predefinito.
Tuttavia, lo stato del registro non è come mi aspettavo:
sulla macchina A, sia HKLM\Software\Clients\Mail
e HKLM\Software\Wow6432Node\Clients\Mail
hanno una stringa vuota come valore stringa predefinito. Su B, entrambe le chiavi contengono Microsoft Outlook
come valore di stringa predefinito, che è chiaramente errato. Ulteriori indagini hanno rivelato che il valore corretto sembra essere scritto su HKCU\Software\Clients\Mail
su entrambe le macchine.
Voglio che la mia applicazione la gestisca correttamente per tutti i casi. Sembra logico che Win7 ora registri un client di posta predefinito per ogni utente, ma sembra piuttosto incoerente. Quando si guarda alla pletora di informazioni che rimandano a HKLM\Software\Clients\Mail
, sembra ovvio che le versioni precedenti di Windows lo gestissero in modo diverso e scrivessero sempre in quella posizione. Quindi quando è cambiato? Il valore errato sulla macchina B ha un significato? Se no, perché viene scritto lì in primo luogo? Il mix di client di posta elettronica a 64 bit e 32 bit sullo stesso computer cambia qualcosa?
Apprezzerei molto se qualcuno condividesse informazioni attendibili o documentazione che spieghi questo argomento! Forse c'è una funzione API Win32 che restituisce il valore corretto?
"Win7 ora sembra in possesso di un client di posta predefinito per ogni utente" -> sì; "versioni precedenti di Windows gestivano diversamente" -> sì, mentre penso che fosse già il caso in Vista –