在 Windows 8 之前,添加mailto:
协议处理程序的方法很简单(如此处所述,以编程方式使用 mailto 协议注册 Windows 程序)
从 Windows 8 开始,旧方法不再有效。Win8 似乎强制执行以下键:HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\URLAssociations\MAILTO\UserChoice
.
似乎ProgID
所选应用程序的 已散列并且无法伪造,至少我不能说。
有没有人有一个工作方法,或者可以指向一个实用程序类/代码,它将概述如何以编程方式完成这个?
对于代码,任何语言都可以。
编辑
其他讨论要求我指定一个用例,所以我认为这在这个问题的背景下会有所帮助。请考虑此屏幕截图https://github.com/shellscape/Gmail-Notifier-Plus/raw/master/Promotional/prefs-account.png和允许用户指定 mailto 处理的复选框。在这个用例中,没有人强迫用户,用户可以控制并做出决定。虽然 Windows 8 商店应用程序(metro/modern)有一个可用的应用程序清单条目,可以自动执行上述缺失的过程,但桌面应用程序似乎并不存在。