当我的应用程序启动时,我想知道 Outlook 是否已安装以及它是否是默认邮件客户端。
对于安装,我只检查一个注册表项,但如何知道它是否是默认邮件客户端?
当我的应用程序启动时,我想知道 Outlook 是否已安装以及它是否是默认邮件客户端。
对于安装,我只检查一个注册表项,但如何知道它是否是默认邮件客户端?
根据此MSDN 链接“HKEY_LOCAL_MACHINE\SOFTWARE\Clients\Mail 可以包含零个或多个子项,每个注册的电子邮件应用程序一个”。
关于哪个注册的电子邮件应用程序是默认应用程序,相同的链接说:
HKEY_CURRENT_USER\SOFTWARE\Clients\Mail\(default)
将为您提供当前用户的默认邮件应用程序(如果已设置),而
HKEY_LOCAL_SOFTWARE\SOFTWARE\Clients\Mail\(default)
为您提供系统范围的。
该链接还指出,将邮件客户端注册为开始菜单邮件应用程序与系统默认电子邮件客户端或注册的mailto处理程序(这似乎有点奇怪恕我直言)是不同的。
该链接中的信息适用于 XP、Vista 和 Win 7。
高温高压
已安装的电子邮件客户端列在下面
HKEY_LOCAL_MACHINE\SOFTWARE\Clients\Mail
此键的默认字符串值保存当前选择的默认邮件客户端,在我们的例子中Microsoft Outlook
HKEY_CLASSES_ROOT\mailto\shell\open