2

如何将准备好的带有附件的消息加载到用户的默认邮件客户端中?

我四处寻找答案,发现:

  • 使用带有“mailto:”url 的 Process.Start() 将不起作用,因为 mailto: 不支持附件(Outlook 除外,我不能依赖 Outlook 作为默认客户端。)

  • Code Project MAPI 包装器不起作用,因为它显然会阻止应用程序。

  • 然后是这个 MAPI Wrapper,它显然不会阻止应用程序,但它会更改当前目录,这会破坏我们应用程序中的许多东西,其中一些在不同的线程中运行,所以我不能仅仅依靠更改回来了。

  • 在尝试上述方法并发现当前目录问题后,我遇到了这篇博文,将问题归咎于 MAPI 存根库,

  • 这将我指引到这里,它指出 MAPI 存根库已被弃用。

这让我问:

有没有办法在 C# 应用程序中创建包含附件的电子邮件,并将其加载到用户的默认邮件客户端中,该客户端不依赖于 Outlook 客户端,在运行时不会阻止应用程序的 UI ,不会从其下方更改应用程序的当前目录,并且不依赖已弃用和即将删除的系统库?

4

0 回答 0