【发布时间】:2012-11-07 10:50:38
【问题描述】:
我需要复制 Outlook 特性/功能以向某人 (see here) 发送一些任务请求,但邮件从使用 ASP.NET C# 的网络服务器发送且未在网络服务器上安装 Outlook(因此使用 Outlook 自动化是不可能)。
我已经检查了执行此操作的可能性,将任务发送给某人的常见方法似乎是生成iCalendar 格式的.ics 文件,并将该文件包含在邮件中 (see this stackoverflow question )。
效果很好,但是 Outlook 发送的任务不等同:
- 事件 (VEVENT) 有开始日期和结束日期(类似于任务),但没有“完成”字段(这是有意义的,因为它是事件,而不是任务)。
- 待办事项 (VTODO) 只有截止日期,没有开始日期或结束日期 and it is not supported by outlook。
我检查了自己 Outlook 在包含任务请求的邮件中究竟发送了什么:它包括一个编码为 Base64 的 winmail.dat 文件(带有 content-type:application/ms-tnef)。在该文件(这是一个二进制文件)中,有一个对 IPM.TaskRequest 的引用,这似乎是我需要的。
我检查了网络并找到了一些 TNEF 解析器,但我需要相反的:从 C# 代码生成一个包含任务请求的 TNEF 文件。我想知道是否有办法做到这一点。使用库(无论是否免费)都不是问题。
【问题讨论】:
-
你有什么解决办法吗?
标签: c# asp-classic outlook icalendar tnef