Asp经典邮件功能发送带空格的字符串

时间:2014-02-28 12:13:52

标签: email vbscript asp-classic

我发送一封带有CDO.Message对象的邮件,邮件到达时字符之间有空格。

例如,我发送了这个字符串:

“Lorem ipsum dolor sit amet,consectetur adipisicing elit,sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.Ut enim ad minim veniam,quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.Duis aute irure dolor in repreptderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur。Excepteur sint occaecat cupidatat non proident,sunt in culpa qui officia deserunt mollit anim id est laborum。“

到达这个:

“Lorem ipsum dolor sit amet,consectetur adipisicing elit,sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.Ut enim ad minim veniam,quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.Duis aute irure dolor in reprehenderit in volup tate velit esse cillum dolore eu fugiat nulla pariatur。Excepteur sint occaecat cupidatat non proident,sunt in culpa qui officia deserunt mollit anim id est laborum。“

检查强词是否明白。为什么要出现呢?

我的代码

        Set Mail= Server.CreateObject("CDO.Message")
        Set MailConfig = Server.CreateObject("CDO.Configuration")

        Mail.From = example@hotmail.com

        Mail.Bcc = "example@hotmail.com"

        Mail.Subject = "Example"  

        MailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = sendUsing
        MailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = smtpServer
        MailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = smtpServerPort
        MailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
        MailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = smtpUseSSL
        MailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = smtpConnectionTimeout
        MailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername") = mailUsername
        MailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword") = mailPassword
        MailConfig.Fields.Update

        Mail.Configuration = MailConfig

        strBody = "the string"

        Mail.HTMLBody = strBody
        Mail.HTMLBodyPart.Charset = "utf-8"
        Mail.send

额外空格每991个字符出现一次。 我补充说:

Mail.HTMLBodyPart.ContentTransferEncoding = "quoted-printable"

已经解决了。

1 个答案:

答案 0 :(得分:1)

如果您不在电子邮件正文中发送HTML,请不要使用Mail.HTMLBody,而是在发送纯文本时使用Mail.TextBody这是正确的选择。 Textbody保留换行符和HTMLBody没有的换行符和其他控制字符。

在显示使用HTMLBody发送的原始文本时,我在Outlook中遇到过类似的问题,所以我相信这个简单的更改会解决它。