经典的ASP邮件函数发送字符串空格 [英] Asp classic mail function sends string with blank spaces

查看:288
本文介绍了经典的ASP邮件函数发送字符串空格的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我发送邮件与CDO.Message对象和邮件到达时,字符之间的空白区域。

I am sending a mail with CDO.Message object and the mail arrives with a blank space between characters.

例如,我发这个字符串:

For example, I sent this string:

Lorem存有悲坐阿梅德,consectetur adipisicing ELIT,sed的根本eiusmod tempor incididunt UT labore等dolore麦格纳aliqua。UT斯达康enim广告微量veniam,QUIS nostrud实习ullamco laboris暂准UT aliquip前EA commodo consequat。DUIS奥特在重新$ p $ irure悲phenderit在voluptate velit埃塞cillum dolore欧盟fugiat法无pariatur。Excepteur SINT occaecat cupidatat非proident,必须遵守的过失魁正式开通了deserunt mollit阿尼姆ID EST laborum。

和到达这样的:

Lorem存有悲坐阿梅德,consectetur adipisicing ELIT,sed的根本eiusmod tempor incididunt UT labore等dolore麦格纳aliqua。UT斯达康enim广告微量veniam,QUIS nostrud实习ullamco laboris暂准UT aliquip前EA commodo consequat。DUIS奥特irure悲在重新prehenderit在 VOLUP泰特 velit ESSE cillum dolore欧盟fugiat法无pariatur。Excepteur SINT occaecat cupidatat非proident,必须遵守的过失魁正式开通了deserunt mollit阿尼姆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."

检查强词理解。为什么occurre呢?

Check the strong word for understand. Why occurre that?

我的code

        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个字符。
我加了这一点:

The extra space appears every 991 characters. I added this:

Mail.HTMLBodyPart.ContentTransferEncoding = "quoted-printable"

和已经解决了。

推荐答案

如果您没有在电子邮件正文发送HTML格式的,不利用 Mail.HTMLBody 的,而是使用 Mail.TextBody 发送纯文本时,这是正确的选择。 的TextBody preserves换行和其他控制字符, HTMLBody 没有。​​

If you don't send HTML in the email body, do not make use of Mail.HTMLBody, instead use Mail.TextBody which is the correct choice when sending pure text. Textbody preserves line breaks and other control characters which HTMLBody does not.

我已经在Outlook中显示与 HTMLBody 发送原始文本的时候遇到过类似的问题,所以我相信这个简单的变化将解决这个问题。

I have experienced similar issues in Outlook when displaying raw text sent with HTMLBody, so I believe this simple change will fix it.

这篇关于经典的ASP邮件函数发送字符串空格的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆