![如何在Windows上打开第三方“非mapi”电子邮件客户端?](https://linux22.com/image/1561745/%E5%A6%82%E4%BD%95%E5%9C%A8Windows%E4%B8%8A%E6%89%93%E5%BC%80%E7%AC%AC%E4%B8%89%E6%96%B9%E2%80%9C%E9%9D%9Emapi%E2%80%9D%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6%E5%AE%A2%E6%88%B7%E7%AB%AF%EF%BC%9F.png)
更具体地说,我们的客户正在使用一些旧程序,这些程序允许将图像或文档从应用程序导出到 Outlook 或他们的“默认电子邮件客户端”。我们目前正在编写一个应用程序来捕获这些数据,并为他们提供额外的选项,让他们可以在通过 Outlook 发送敏感数据之前使用另一个应用程序/服务发送这些敏感数据。
我们能够注册此应用程序以在 Windows 10/7 中工作(使用正确的注册表项和文件关联)以默认处理 mailto .eml 等,但我们无法使用“发送邮件”(例如,右键单击发送到邮件收件人)将其打开。它们导出的应用程序调用 MAPI(我相信?)调用,我们收到“未注册默认电子邮件程序”错误。
我们所需要的只是使用默认的 sendmail/mapi 处理程序打开我们的应用程序,我们可以捕获参数并从那里获取。我们尝试在注册表中为我们的应用程序设置“DLLPath”条目,但它没有打开它。有办法吗?我们只需要窗口使用默认的发送邮件打开我们的应用程序!
经过广泛的谷歌搜索后,我模糊地了解到我们必须编写一个 DLL 才能打开我们的应用程序?这似乎有点荒谬,我们只需要默认行为,即使用它喜欢的任何参数打开应用程序,我们可以解释并从那里开始。
谢谢您的时间,任何指导都将不胜感激。