web-dev-qa-db-ja.com

IIS Mailroot Pickupのテキストファイルをフォーマットして、添付ファイル付きの電子メールを送信する方法を教えてください。

添付ファイルのある電子メールを送信するためにSMTPサービスで読み取れるようにテキストファイルをフォーマットするにはどうすればよいですか?

II6 SMTPを使用してピックアップフォルダからメールを送信するサーバーがあります。目標は、適切にフォーマットされたテキストファイルをMailroot\Pickupにドロップすることです。その後、ファイルは自動的に処理され、正しいSMTP受信者に送信されます。

単純なファイルの場合、これは正しく動作します。以下は、機能する単純なファイルの例です(ドメイン名が変更されています)。

 From:[email protected] 
 To:[email protected] 
 Subject:Hello World!
 
 Eのテスト本体郵便物

上記の内容を含むテキストファイルをMailroot\Pickupフォルダにドロップすると、正しく送信されます。しかし、私はアタッチメントを機能させる方法を理解することができませんでした。

SMTP添付ファイルのエンコード方法の説明 および 単純なbase64エンコード変換用の別のツール の資料を見つけました。これらのページの情報を使用して、次のテキストを思いつきました。

 From:[email protected] 
 To:[email protected] 
 Subject:Hello World!
 
 MIME-Version:1.0 
 Content-Type:text/plain; 
 border = "Attached" 
 Content-Disposition:inline; 
 
 --Attached 
 Content-Transfer-Encoding:base64 
 Content-Type:text/plain; 
 name = "attachment.txt" 
 Content-Disposition:attachment; 
 filenamename = "attachment.txt" 
 
 VGhpcyBpcyBhIHRlc3Qgb2Ygc29tZXRoaW5nIHRvIGVuY29kZS4NCk5ldyBsaW5lDQpOZXcgTGlu 
 ZQ0KIkhlbGxvdyIgISEhDQo9PT09ICcgZnNkZnNkZiAxMjM1NDU2MzQzNA == 
 --Attached  -  [.____]

しかし、上記のテキストをファイルに入れてMailroot\Pickupにドロップすると、添付ファイルが正しく送信されません。代わりに、電子メールの本文に次のように表示されます。

 MIME-Version:1.0 
 Content-Type:text/plain; 
 border = "Attached" 
 Content-Disposition:inline; 
 
 --Attached 
 Content-Transfer-Encoding:base64 
 Content-Type:text/plain; 
 name = "attachment.txt" 
 Content 【。____] [。____] [。____];:-Dispositionアタッチメントfilenamename = "attachment.txt" [.____] VGhpcyBpcyBhIHRlc3Qgb2Ygc29tZXRoaW5nIHRvIGVuY29kZS4NCk5ldyBsaW5lDQpOZXcgTGlu [.____] ZQ0KIkhlbGxvdyIgISEhDQo9PT09ICcgZnNkZnNkZiAxMjM1NDU2MzQzNA == --Attached  -  

SMTPサービスが添付ファイルを正しく送信するようにテキストファイルをフォーマットするために何をする必要があるのか​​わかりません。

5
Ben McCormack

SMTPによって読み取られるファイルのフォーマットは、少し注意が必要です。ファイルリーダーはそれほど寛容ではない可能性が高いため、空白とセミコロンに注意してください。

3つの添付ファイルがあるメッセージである次のテキストファイルを試してください。最初の添付ファイルはプレーンASCIIテキストであり、メッセージ本文であるかのように読み取られます。他の添付ファイルは実際の添付ファイルとして読み取られます。

From: <[email protected]>
To: <[email protected]>
Subject: Hello World!
MIME-Version: 1.0
Content-Type: multipart/mixed;
  boundary="Attached"


--Attached
Content-Type: text/plain;
Content-Transfer-Encoding: 7bit

Hey Scott, I think I've got it figured out.  See the attached file.
--Attached
Content-Type: text/plain;
  name="TestAttached.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
  filename="TestAttached.txt"

VGhpcyBpcyBhbiBleGFtcGxlIG9mIGJhc2U2NCBlbmNvZGVkIHRleHQu
--Attached
Content-Type: text/plain;
  name="SourceCode.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
  filename="SourceCode.txt"

RnJvbTogPGJtY2Nvcm1hY2tAbXlkb21haW4uY29tPg0KVG86IDxibWNjb3JtYWNrQG15ZG9tYWlu
LmNvbT4NClN1YmplY3Q6IEhlbGxvIFdvcmxkIQ0KTUlNRS1WZXJzaW9uOiAxLjANCkNvbnRlbnQt
VHlwZTogbXVsdGlwYXJ0L21peGVkOw0KICBib3VuZGFyeT0iQXR0YWNoZWQiDQoNCg0KLS1BdHRh
Y2hlZA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOw0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGlu
ZzogN2JpdA0KDQpIZXkgU2NvdHQsIEkgdGhpbmsgSSd2ZSBnb3QgaXQgZmlndXJlZCBvdXQuICBT
ZWUgdGhlIGF0dGFjaGVkIGZpbGUuDQotLUF0dGFjaGVkDQpDb250ZW50LVR5cGU6IHRleHQvcGxh
aW47DQoJbmFtZT0iYXR0YWNoZWRJbmZvLnR4dCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6
IGJhc2U2NA0KQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsNCglmaWxlbmFtZT0iYXR0
YWNoZWRJbmZvLnR4dCINCg0KVkdocGN5QnBjeUJoYmlCbGVHRnRjR3hsSUc5bUlHSmhjMlUyTkNC
bGJtTnZaR1ZrSUhSbGVIUXUNCg0KLS1BdHRhY2hlZC0t

--Attached--
3
Ben McCormack

古い投稿ですが、これは最近私を助けました

zamzarは、埋め込みPDFであっても、msgをemlに変換できます。エクスチェンジピックアップフォルダーでテストし、機能しました。

1
Gal220