Как отправить `MailMessage`, который был сохранен в` SpecifiedPickupDirectory` - PullRequest
1 голос
/ 26 июля 2011

Я храню электронные письма в каталоге, как показано ниже.Как мне поступить программно, послав их позже, скажем, event некоторых сортов

smtpClient.PickupDirectoryLocation = "C:\\EmailHoldingBin\\";

smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.SpecifiedPickupDirectory;

Ответы [ 3 ]

4 голосов
/ 26 июля 2011

Файлы, хранящиеся с использованием PickupDirectoryLocation, записываются в необработанном формате SMTP (MIME / EML) и предназначены для обработки локальным сервером SMTP, который обычно является IIS.Хотя объекты SmtpClient и MailMessage могут эффективно «записывать» как необработанные SMTP / MIME, они не имеют возможности для чтения таких файлов.Если вам необходимо прочитать эти файлы, вам нужно написать собственный синтаксический анализатор или использовать уже созданный, например, этот .

1 голос
/ 26 июля 2011

Я согласен с ответом от Ганжело

Еще один момент:
Каталог раскладки работает только в том случае, если какая-либо служба (например, IIS) собирает хранящиеся там почтовые сообщения и отправляет их - поэтому вам нужно настроить IIS, чтобы это работало ...

РЕДАКТИРОВАТЬ - папка раскладки Exchange согласно комментарию:

например с Exchange 2007 http://www.msexchange.org/articles_tutorials/exchange-server-2007/management-administration/exchange-pickup-folder.html

и для Exhange 2010 http://technet.microsoft.com/en-us/library/bb124230.aspx

0 голосов
/ 26 июля 2011

Вам необходимо вызвать smtpClient.Send (System.Net.Mail.MailMessage), но не раньше, чем устанавливать свойства From, To, Subject и Body для System.Net.Mail.MailMessage.

...