ASP.NET如何打开用户';s web应用程序中的Outlook

本文关键字:web 应用程序 Outlook NET 何打开 用户 ASP | 更新日期: 2023-09-27 18:26:40

我目前正在使用C#开发一个web应用程序。在最初的应用程序中,其中一个功能是打开Outlook并创建一个带有附加文件的草稿——这是一个桌面应用程序。现在,他们希望在新的web应用程序中使用相同的功能。

这就是我的问题。我一直在阅读,据我所见,不可能在服务器上完成,但也许我错过了什么?

如果不可能的话,最好的替代方案是什么?

非常感谢!

ASP.NET如何打开用户';s web应用程序中的Outlook

这实际上是可能的,只要您使用Exchange,并且拥有用户的邮箱/可以传递他们的凭据。

EWS托管API将允许您创建电子邮件并保存带有附件的草稿,因此这不会成为问题。请参阅EWS托管API-使用内联图像保存草稿。

如果您没有使用exchange/无法获得该级别的权限,您可能需要想出一个不同的解决方案。也许将草稿保存为.eml文件?如何将MailMessage对象保存为*.eml或*.msg文件到磁盘。

没有一种方法可以直接从web应用程序中做到这一点。最接近的是mailto链接协议。这将允许您指定收件人、主题和文本正文。不过没有附件。并且不能保证Outlook将处理该链接。

也就是说,如果你可以控制客户端计算机,就可以创建一个客户端应用程序,注册自己的协议供你使用,而不是mailto。这将允许您在与原始应用程序相同的情况下控制Outlook。这里有一个相关的问题解释了这种方法:我如何创建自己的URL协议?(例如://…)

您可以选择

  1. 在客户端上使用mailto协议

  2. 如果您的用户正在使用IE(其他浏览器不支持COM),并且您的应用程序受信任,则可以创建Outlook.Application COM对象的实例,并在Java脚本中以编程方式创建新邮件。