Domanda

Sto utilizzando una directory di prelievo di Exchange 2007 per inviare e-mail dalla mia applicazione ASP.NET con System.Net.Mail.SmtpClient . Quindi sto usando SmtpClient.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory . Invia e-mail bene, ma poi ho notato che BCC non funziona affatto. Il file che viene inserito nella cartella di prelievo sembra avere le impostazioni giuste, ma Exchange sta ignorando l'elenco X-Receiver. Ecco un esempio del file EML in fase di creazione:

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 @ e lindsey @ sono i destinatari di BCC. Quando utilizzo un invio in rete, funziona perfettamente. BCC smette di funzionare solo con la directory di prelievo. Quindi, sai, sto usando Windows Server 2008 e ASP.NET 3.5 / C #.

Soluzione

Sembra che Exchange 2007 ignori X-Receiver e si aspetti di vedere Bcc: invece. Quindi ho fatto ricorso a mailMessage.Headers.Add (" Bcc " ;, bccList) dove bccList è un elenco delimitato da punti e virgola degli indirizzi e-mail. Funziona bene.

Ma come ha sottolineato Chase Seibert se si guarda l'intestazione del messaggio nel client di posta elettronica, è ancora possibile vedere tutti gli X-Receiver elencati. Sebbene Ccn sia messo a nudo e quindi nascosto ai destinatari. Quindi ottieni l'effetto di un Ccn con la possibilità che qualcuno apra il messaggio e veda tutti i Ccn. Penso che il modo migliore per sopprimere l'elenco X-Receivers sia quello di non includere nulla nella proprietà mailMessage.Bcc.

È stato utile?

Soluzione

Questo funziona sicuramente in Windows 2003 Server con solo l'implementazione MS SMTP fornita con il sistema operativo. La mia comprensione è che Exchange utilizza lo stesso servizio per l'invio.

Anche se questo potrebbe non rispondere alla tua domanda, volevo notare che il metodo Pickup ha uno svantaggio di cui potresti non essere a conoscenza. In genere, MS SMTP rimuove le intestazioni BCC e X-Recipient dall'EML durante il trasporto in entrata .

Quando inserisci EML in Pickup, salti questo passaggio. Pertanto, i destinatari remoti saranno effettivamente in grado di VEDERE i destinatari BCC se guardano l'intestazione dell'email. Prova a inviare un'e-mail a un account Gmail e BCC qualcun altro. Se visualizzi l'intestazione in Gmail, vedrai il destinatario BCC.

Consiglio invece di utilizzare SMTP per distribuire questo messaggio.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top