我需要复制Outlook
特性/功能以向某人发送一些任务请求(请参阅此处),但是使用ASP.NET C#
和未在网络服务器上安装 Outlook 的网络服务器发送的邮件(因此无法使用 Outlook 自动化)。
我已经检查了执行此操作的可能性,将任务发送给某人的常见方法似乎是生成格式.ics
文件iCalendar
,并将该文件包含到邮件中(请参阅此 stackoverflow 问题)。
它工作得很好,但是 Outlook 发送的任务不等同:
- 事件 (VEVENT) 有一个开始日期和结束日期(就像一个任务),但没有“完成”字段(这是有意义的,因为它是一个事件,而不是一个任务)。
- Todos (VTODO) 只有截止日期,没有开始日期或结束日期,outlook 不支持。
我检查了自己 Outlook 在包含任务请求的邮件中究竟发送了什么:它包含一个winmail.dat
编码content-type:application/ms-tnef
为Base64
. 在该文件(这是一个二进制文件)中,有一个IPM.TaskRequest
似乎是我需要的引用。
我检查了网络并找到了一些 TNEF 解析器,但我需要相反的:从 C# 代码生成一个包含任务请求的 TNEF 文件。我想知道是否有办法做到这一点。使用库(无论是否免费)都不是问题。