Winmail.dat -TNEF格式文件
今天有同事收到邮件里有个奇怪的附件Winmail.dat,开始还以为是视频文件,下了播放器却打不开,说不是标准的date格式,信里也没别的有效内容了,没办法,只好动用法宝先用记事本强制打开发现含有IPM.Microsoft Mail.Note之类的信息。google说这是微软的Email传输不确定封装格式,直接用MS Office Outlook收取才能打开,如果用其它终端收取再用MS Office Outlook 也无法识别打开。后来google 说 Winmail Opener最好,分享给大家,下载地址://www.eolsoft.com/download/winmail_opener.exe
顺便介绍相关知识:
TNEF Exchange Server 2003 传输不确定封装格式 (TNEF) 将 MAPI 邮件转换为 RFC 822 格式
TNEF 以 application/ms-tnef 类型的 MIME 附件的形式出现在邮件中。该附件的名称为 Winmail.dat。包含完整的邮件内容以及所有附加文件。
只有 MAPI 客户端(如 Outlook)能够对 Winmail.dat 附件 进行TNEF解码。
在以下几种可能的 Exchange 对 Exchange 传输情形下,必须进行 MAPI 到 RFC 822 的转换:
收件人在同一路由组中的 Exchange 服务器上 Exchange Server 2003 将 MAPI 邮件转换为 Summary-TNEF (S/TNEF) 格式,这是一种特殊的传输不确定封装格式 (TNEF),没有纯文本部分,并且以八位的二进制格式传送。S/TNEF 邮件仅仅包含 Winmail.dat。
收件人在另一个路由组中的 Exchange 服务器上,且 Exchange 组织在纯模式下工作 Exchange Server 2003 将 MAPI 邮件转换为 Summary-TNEF (S/TNEF) 格式,因为纯模式下的 Exchange 组织只能包含支持二进制 MIME 的 Exchange 2000 Server 服务器和 Exchange Server 2003 服务器
收件人在另一个路由组中的 Exchange 服务器上,并且 Exchange 组织在混合模式下工作 在混合模式下,有可能将 Exchange Server 5.5 的 Internet 邮件服务用作 SMTP 连接器,但是 Internet 邮件服务不支持二进制 MIME。由于 S/TNEF 的 RFC 822 表示(由 IMAIL 产生)是二进制 MIME,因此 Internet 邮件服务无法传输 S/TNEF 邮件。
由于 Exchange 分类程序无法预先检测到邮件将采用什么路由路径,因此在混合模式下,分类程序不为本地路由组外部的服务器上的收件人进行邮件转换,也就是不将邮件转换为 S/TNEF。为了在传输路径中容纳可能的 Internet 邮件服务实例,Exchange 分类程序将邮件转换为纯文本部分以及旧版 TNEF 格式附件。旧版 TNEF 格式是 Internet 邮件服务能够传输的七位 MIME。
收件人是本地 Exchange 组织之外的 MAPI 收件人 用户和管理员可以为外部邮件环境中使用 Outlook 的收件人启用跨本地 Exchange 组织边界的 TNEF 传输。由于收件人不在本地 Exchange 组织中,Exchange 分类程序无法确定邮件传输中涉及到的所有 SMTP 主机是否都支持二进制 MIME。因此,Exchange 分类程序将邮件转换为纯文本部分以及旧版 TNEF 格式的附件。
发送到公用文件夹中的 MAPI 邮件 发送到公用文件夹中的邮件始终以旧版 TNEF 格式中继,通过 SMTP 发送到展开服务器的 MAPI 邮件 如果邮件包含通讯组列表,并且明确指定的展开服务器不是本地服务器,邮件将以旧版 TNEF 格式转发到展开服务器(如果使用 SMTP 传输邮件)。
在这种情况下,会将一个属性放入邮件传输信封中通过 XEXCH50 传输。该属性通知展开服务器最初通过 Exchange 存储驱动程序收到邮件的时间。展开服务器上的分类程序展开通讯组列表后,必须分别对每个收件人应用有效的 RFC 822 邮件格式。分类程序使用 Exchange 存储驱动程序将邮件复制到 Exchange 存储中,IMAIL 再从 Exchange 存储中读取 TNEF 数据并用原始邮件的提交时间构建 MAPI 邮件。之后,SMTP 传输子系统便能够从存储中读取符合收件人格式要求的 RFC 822 格式 MAPI 邮件。
可以通过添加以下注册表项,控制发送邮件的 TNEF 格式行为。数字 nn 代表此计算机的虚拟服务器实例。
位置 HKey_Local_MachineSoftwareMicrosoftExchangeStoreDriverExchange nn EnableTnef
值 Disabled
类型 REG_DWORD
数值数据 0×0
描述 如果值为 0×0,则禁用 TNEF,不使用 TNEF 生成邮件。
如果值为 0×1,则使用旧版 TNEF 生成邮件,此时通常生成 S/TNEF。值为 0×2 则没有任何影响,因为这是默认行为