Summary: | 'Help/Set as default client' hangs | ||
---|---|---|---|
Product: | Claws Mail (Windows) | Reporter: | Theodor Ciobanu <theo19k> |
Component: | default | Assignee: | users |
Status: | NEW --- | ||
Severity: | normal | ||
Priority: | P3 | ||
Version: | 3.7.8 | ||
Hardware: | PC | ||
OS: | Windows XP | ||
Attachments: |
'default client' fix suggestion
2nd suggestion |
Description
Theodor Ciobanu
2010-12-15 23:42:18 UTC
Created attachment 926 [details]
'default client' fix suggestion
Hi, Using HKLM probably fails if the user's not an administrator, doesn't it ? Created attachment 927 [details] 2nd suggestion For a limited user, it probably does; but the very first registry value that CM tries to write is a restricted one, with the following comment: /* Try to set the Mail Start menu item to Claws. It may fail if we're not root; we don't care */ So I just went with it. Plus, there doesn't seem to be a way around it. According to MSDN, we need to write to HKLM\Software\Clients\Mail\Claws Mail for the info to be visible (and this makes sense, as you couldn't set the system-wide mail client to one that is installed for just one user - none of the other users would have the settings for it): http://msdn.microsoft.com/en-us/library/dd203067%28v=vs.85%29.aspx I'm adding another patch that changes the order in which the registry keys are written a bit - it first tries to register the mail client (HKLM); if this doesn't fail, it tries to set CM as the Start Menu Email app for the current user (HKCU). If this also succeeds, mailto: handler registry keys are written as well (HKCU). And last but definitely not least, if everything worked OK so far, it tries to set CM as the system wide email app (HKLM). I guess the proper way would be to treat separately these 3 cases - mailto: handler, current user's start menu email app and global email client. But the last two require access to HKLM\Software\Clients\Mail to at least register CM with Windows. |