问题标签 [winmail.dat]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
4509 浏览

java - 如何处理 Microsoft Outlook winmail.dat?还有什么惊喜吗?

我决定我真的不喜欢微软和他们的方式。请您给我有关如何处理电子邮件中的 winmail.dat 的指示,是否有 jython 库或 java 库可以让我处理这个问题。

我刚刚完成了一个电子邮件处理程序,用 java 5 上的 jython 2.2.1 编写。在最后的负载测试期间,我意识到应该采用标准 MIME 电子邮件格式的附件现在被捆绑在一些破旧的 winmail.dat 中,意味着许多不同的 Outlook 客户端使用这个 winmail.dat 污染互联网,所以这意味着我需要支持 winmail.dat。因此我的程序无法正确处理数据。

请您简要描述一下 winmail.dat 是什么以及为什么它会惹恼我们。

还有什么惊喜可以期待!?到目前为止,我还需要注意什么标准 MIME 电子邮件。盒子里还有其他插孔吗?

非常感谢您的宝贵时间。

0 投票
1 回答
503 浏览

mapi - Winmail.dat 从通讯簿发送给某些收件人

我正在为 Outlook(2003 和 2007)制作一个插件,它正在更改在 ItemSend 事件处理程序中发送的消息的正文和主题。我在接收 html 内容的 winmail.dat 文件时遇到问题。我在论坛上发现,为避免这种情况,我需要将消息的 UseTnef 属性设置为 false,将收件人的 PR_SEND_RICH_INFO 属性设置为 false。我已经设法通过扩展 MAPI 做到了前者,但我正在为后者而苦苦挣扎。使用 McfMapi,我可以看到联系人通讯录中的 PR_SEND_RICH_INFO 为 false,但是当我检查收件人表 (GetMessageRecipients) 并迭代槽属性时,对于某些收件人,属性标记为 0x34a0000a,这表示错误或缺少属性。在发件箱中创建邮件后,对于具有错误标记的收件人,此属性设置为 true,并且他们会在其客户端中接收 winmail.dat。我什至尝试将属性标记更改为 0x3a40000b 并将其设置为 false,使用更改后的表作为参数调用 ModifyRecipients 但没有效果。

你有什么想法或建议可以帮助我解决这个问题吗?

提前致谢

弗拉基米尔医生

0 投票
6 回答
4389 浏览

c# - 如何解析 winmail.dat 文件?

简单的问题。我有一个 C# 应用程序,它使用AE.Net.Mail库访问 IMAP 服务器来检索消息和附件。有时,当从 Outlook 发送邮件时,附件包含在名为 winmail.dat 的文件中。那是TNEF格式的文件。

我的应用程序是否有库或任何其他方式来“解压”这些文件,以便我可以获取附件?

0 投票
3 回答
2200 浏览

mfc - 带有 Outlook 的 MAPISendMail 有时会导致 winmail.dat

我在 MFC 应用程序中使用MAPISendMail(),并且遇到一个问题,即 webmail 客户端有时会收到 winmail.dat 附件,而不是“真实”附件。

我研究了很多,发现其他人也遇到了这个问题,但没有找到解决方案。

我相信问题可能出在我的MapiFileDesc结构中,我让 lpFileType 成员指向 NULL,以便让邮件程序(在我的情况下为 Outlook 2010)自动确定文件类型。 lpFiletypeMapiFileTagExt结构,文档中这样说: NULL 值表示未知文件类型或由操作系统确定的文件类型。

所以我相信这应该适用于常见的类型,比如 JPEG 或 GIF 等。

我读到 winmail.dat 是由 Outlook 发送用微软专有的ms-tnef编码编码的邮件引起的。但是,在发送电子邮件时,Outlook 将“HTML”显示为突出显示,而不是 RTF。

有没有人遇到过这个问题并妥善解决?

通过 SMTP 发送等不是一种选择,因为用户应该在他们的已发送邮件文件夹中拥有邮件的副本。使用 Outlook 对象模型不是一种选择,因为这需要用户安装 Outlook,而不是任何 MAPI 兼容的客户端。

0 投票
1 回答
1353 浏览

jakarta-mail - 获取作为 winmail.dat 接收的 POP 3 的电子邮件附件

当我尝试从 POP 3 邮件中获取附件时,我将它们作为 winmail.dat 获取,而不是原始附件名。如何获取原始文件名?

0 投票
3 回答
4268 浏览

php - 如何使用 PHP 脚本提取 TNEF winmail.dat?

我正在开发一种功能,它将读取邮箱中的所有电子邮件并处理附件文件。

从 Outlook 发送任何邮件时,其附件将保存为 winmail.dat。[请注意,我已经有了使用 IMAP PHP 下载附件的代码。我的电子邮件附件存储在服务器上我的代码库的一个文件夹中。] 我需要将 winmail.dat 附件提取为其原始格式。到目前为止,我遇到的解决方案都需要手动操作,例如提供提取文件的在线工具,或使我们能够转换 .DAT 文件的软件。

但我需要使用脚本或任何自动化过程(如 cron 或其他东西)进行提取。[我使用的是 Linux - centos 5.7 服务器。]

我的应用程序是否有任何库或任何其他方式来“解包”这些文件,这样我就可以在不手动执行的情况下获取附件?

谢谢!

0 投票
1 回答
812 浏览

.net - 打开 Winmail.dat 文件时 TNEF 签名无效

我有一个 win mail.dat 文件。当我尝试使用 winmail 阅读器软件打开它时,我收到“无效的 TNEF 签名”错误。我怎样才能打开这个文件?

谁能帮我找到这个问题的答案。

0 投票
1 回答
208 浏览

linux - 提取 winmail.dat 信息而不是附件

我已经使用TNEF了一段时间来从RTF发送的电子邮件中提取附件Outlook,但我想知道有没有办法提取有关其中包含的附加信息的信息?

更准确地说,我说的是投票按钮以及它可能包含的其他任何内容?

0 投票
0 回答
234 浏览

c# - 如何防止 MS Outlook 发送纯文本电子邮件中附加的 winmail.dat?

我目前正在使用网络服务,如果发生错误或发送的数据格式不正确,该服务必须向客户回复电子邮件。我正在使用MAPIMessage类发送在运行该服务的计算机中打开的任何 Microsoft Outlook 帐户中设置为“未读”的邮件。

这是发送电子邮件的方法的代码。

就像我之前说的,这封邮件只能是纯文本,所以我将最后两个参数设置为 null 以指定该方法在我回复邮件时没有任何附件:

事实上,这封电子邮件包含文件 winmail.dat,这不是我想要的。这是通过在 gmail 帐户中测试的外观: 在此处输入图像描述

0 投票
0 回答
929 浏览

php - Winmail.dat 和 PHP 脚本解码

我正在编写一个更正文件附件的 php 脚本。我需要处理的一种情况是 winmail.dat 类型。

我找到了这个解决方案,但是我无法访问 shell,并且我正在使用的 php 环境受到限制并且不允许 shell_exec。

有没有其他方法可以仅使用 php 将这种类型的文件转换为可读的文本文件?