BCC从未从Exchange 2007使用SpecifiedPickupDirectory发送 [英] BCC never sent from Exchange 2007 using SpecifiedPickupDirectory

查看:204
本文介绍了BCC从未从Exchange 2007使用SpecifiedPickupDirectory发送的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Exchange 2007代答目录,从ASP.NET应用程序发送电子邮件到 System.Net.Mail.SmtpClient 。因此,我使用 SmtpClient.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory 。它发送电子邮件很好,但是我注意到BCC根本没有工作。被放置在拾取文件夹中的文件夹似乎有正确的设置,但是Exchange忽略了X-Receiver列表。以下是正在创建的EML文件的示例:

I'm using an Exchange 2007 pickup directory to send emails from my ASP.NET application with System.Net.Mail.SmtpClient. Thus I'm using SmtpClient.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory. It sends emails fine, but then I noticed that BCC is not working at all. The file being placed in the pickup folder seems to have the right settings, but Exchange is ignoring the X-Receiver list. Here is a sample of the EML file being created:

X-Sender: "Joe" <joe@example.com>
X-Receiver: david@example.com
X-Receiver: contact@example.com
X-Receiver: lindsey@example.com
MIME-Version: 1.0
From: "Joe" <joe@example.com>
To: david@example.com
Date: 10 Mar 2009 9:32:27 -0500
Subject: Test Message
Content-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: quoted-printable

<p>Test Message</p>

contact @ and lindsey @是BCC收件人。当我使用网络发送,它工作正常。 BCC只停止使用拾取目录。所以你知道,我使用Windows Server 2008和ASP.NET 3.5 / C#。

contact@ and lindsey@ are the BCC recipients. When I use a network send, it works fine. BCC only stops working with the pickup directory. So you know, I'm using Windows Server 2008 and ASP.NET 3.5 / C#.

看来,Exchange 2007忽略了X-Receiver,并希望看到Bcc:。所以我已经做了mailMessage.Headers.Add(Bcc,bccList),其中bccList是分号分隔的电子邮件地址列表。可以正常工作。

It seems that Exchange 2007 ignores the X-Receiver and expects to see Bcc: instead. So I've resorted to doing mailMessage.Headers.Add("Bcc", bccList) where bccList is a semicolon-delimited list of the email addresses. That works fine.

但是,如果您查看电子邮件客户端中邮件的标题,Chase Seibert将会显示出来,您仍然可以看到列出的所有X-Receivers。虽然Bcc被剥离,因此隐藏在接收者身上。所以你得到一个Bcc的效果,可能有人会打开这个消息,看到所有的Bcc。我认为禁止X-Receivers列表的最佳方法是在mailMessage.Bcc属性中不包含任何内容。

But as pointed Chase Seibert out if you look at the header of the message in the email client, you can still see all the X-Receivers listed. Though Bcc is stripped out and thus hidden from the recipients. So you get the effect of a Bcc with the possibility that someone will open the message and see all the Bcc's. I think the best way to suppress the X-Receivers list is to not include anything in the mailMessage.Bcc property.

推荐答案

绝对适用于Windows 2003 Server,只是与操作系统一起提供的MS SMTP实现。我的理解是,Exchange使用相同的服务来发送。

This definitely works in Windows 2003 Server w/ just the MS SMTP implementation that ships with the OS. My understanding is that Exchange uses the same service to do it's sending.

虽然这可能不会回答你的问题,但我想注意到,Pickup方法有一个缺点,可能不知道。通常,MS SMTP在入站传输期间从EML 中剥离BCC和X-Recipient标头

Though this may not answer your question, I wanted to note that the Pickup method has a drawback that you might not be aware of. Typically, MS SMTP strips BCC and X-Recipient headers from the EML during the inbound transport.

当您将EML放入拾音器时,您跳过此步骤。因此,如果远程收件人查看电子邮件标题,实际上可以查看BCC收件人。尝试发送电子邮件到Gmail帐户和BCC其他人。如果您查看Gmail中的标题,您将看到BCC收件人。

When you put the EML into Pickup, you skip this step. Thus, remote recipients will actually be able to SEE the BCC recipients if they look at the email header. Try sending an email to a gmail account and BCC someone else. If you view the header in Gmail, you will see the BCC recipient.

我建议使用SMTP切换此消息。

I would recommend using SMTP to hand-off this message instead.

这篇关于BCC从未从Exchange 2007使用SpecifiedPickupDirectory发送的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆