要求:使用TCPSMTP实用程序发送长度为100的VB文件作为附件,并在正文中使用正确的消息而不使用IEBGENER实用程序。
我正在尝试将电子邮件附件文件VB数据集作为附件发送。它在附件或附件文件中处理消息。但两者同时不起作用。 我的JCL是:
//IRTCPN15 EXEC PROC=TCPSMTP
//SMTPIN DD DSN=EMAIL.CODE,
// DISP=SHR
// DD DSN=FILE.TOBE.SENTAS.ATTACH.MENT,DISP=SHR
这里,我使用了相同规格VB 100记录长度的数据集EMAIL.CODE和FILE.TOBE.SENTAS.ATTACH.MENT。我也尝试过使用边界分离器,但它仍然不能同时工作。
数据集EMAIL.CODE包含:
HELO *******
MAIL FROM:<*******>
RCPT TO: <********>;
DATA
FROM: <******>
TO: <*******>;
SUBJECT: subject data
MIME-VERSION: 1.0
CONTENT-TYPE: TEXT/PLAIN
---Mail Body---
CONTENT DISPOSITION: ATTACHMENT; FILENAME=FILE.TXT
请建议我如何将此附件与身体一起发送。出于安全原因,我使用过星号。请随时询问是否需要更多信息。
答案 0 :(得分:1)
在EMAIL.CODE数据集中,您指定邮件的内容类型为text/plain
。但是,text/plain
本身(无论如何都是默认内容类型)总是以内联方式显示。
为了将邮件中的文本视为附件,您需要一个指定Content-Disposition
的{{1}}标头。
我可以在您的问题中看到您有attachment
行,但它被标记为邮件正文的一部分。除了它需要是一个标题,而不是身体的一部分,它还需要连字符。因此,您应该CONTENT DISPOSITION
,而不是CONTENT-DISPOSITION
。
然而,所有这一切都会让你得到一条消息,其中只包含附件,而你的问题则指明你既需要消息体又需要附件。为此,您的最高级CONTENT DISPOSITION
需要为Content-type
,并且邮件正文需要包含两个MIME部分,其中一部分指定为multipart/mixed
,并且另一个text/plain
,但text/plain
。
此示例显示包含text / plain正文和text / plain附件的MIME消息的数据。
Content-Disposition: attachment