【问题标题】:Is the flag X-Unsent still working to Save and Open a .eml file as a draft?X-Unsent 标志是否仍在工作以将 .eml 文件保存并打开为草稿?
【发布时间】:2021-01-21 17:47:09
【问题描述】:

我能够在 Delphi 中使用 TIdMessage 构建一个 .eml 文件。

它有一个这样的标题:

X-Unsent: 1
Subject: Testiing Subject
To: "testeing@mail.com" <testing@mail.com.br>
MIME-Version: 1.0
Date: Tue, 6 Oct 2020 15:43:50 -0300
Content-Type: text/html
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

但是当我使用 Outlook 和 Thunderbird 打开文件(通过 Delphi 代码使用 ShellExecute() 或文件本身)时,都像收到的电子邮件一样打开它,并且不显示发送消息的选项。

据我所知,在网上搜索时,X-Unsent:1 标头应该可以解决问题。

所以我的问题是,这个标志不再起作用了吗?如果没有,我应该怎么做?

【问题讨论】:

  • 我不能代表 Outlook,但对于 Thunderbird,请参阅 Bug #166541: Add support for X-Unsent property in .eml filesX-Unsent support 附加组件。
  • Outlook 尊重X-Unsent: 1,我只是用上面的标题试了一下,Outlook 在编辑模式下打开了它。
  • X-Unsent 插件无法与最新版本的 ThunderBird 一起使用,这很可惜。 Outlook 是我的错误,我实际上在 Outlook 帐户中使用了 Windows 10 的电子邮件应用程序,但它不起作用。但是,当我看到您的评论时,我在 Outlook 应用程序中进行了尝试,结果非常好,这是一个好消息。非常感谢您的帮助

标签: email delphi outlook thunderbird


【解决方案1】:

是的,截至 2021 年底,在 Windows 10 上,365 应用版本 (v16) 中的 Microsoft Outlook 仍按预期响应 X-Unsent: 1 标头。我刚刚使用在 PowerShell 中生成的快速而肮脏的“.EML”文件进行了测试,如下所示:

@"
X-Unsent: 1
From: $sender
To: $recipient_list
Subject: $email_subject
MIME-Version: 1.0
Content-Type: text/plain

$message_body
"@ |out-file -filepath "${MailPath}\${filename}.eml" -encoding utf8

问题的 cmets 中有很好的信息和原始答案,但我认为这可能会受益于被标记为已回答以及一些更新和确认。

最后一点说明:当 EML 文件是 UNIX 样式的“仅 LF”换行符而不是“Windows 样式”CR-LF 时,我的结果最好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-12
    相关资源
    最近更新 更多