使用ASP和CDOSYS以不同语言发送邮件

San*_*rst 2 arabic cdo.message asp-classic

我想发送一封使用阿拉伯语文本作为主题的电子邮件.

代码段将特殊字符正确转换为适用于邮件正文的阿拉伯文本,但对于邮件主题则无法执行此操作.

我想知道我错过了什么?

      Set objCDOSYS = Server.CreateObject("CDO.Message")
      Set objCDOConf = CreateObject("CDO.Configuration")
      Set objCDOFields = objCDOConf.Fields

      objCDOFields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
      objCDOFields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "127.0.0.1"
      objCDOFields.Update

      Set objCDOSYS.Configuration = objCDOConf
      objCDOSYS.MimeFormatted=True 
      objCDOSYS.BodyPart.Charset = "Windows-1256"

      objCDOSYS.From = Trim(Request.Form("frmSender"))
      objCDOSYS.To = Trim(Request.Form("frmRecipient"))

      objCDOSYS.Subject =Request.Form("frmSubject")
      objCDOSYS.HTMLBody = Trim(Request.Form("frmMessage")) 

      objCDOSYS.HTMLBodyPart.charset = "Windows-1256"
      objCDOSYS.Fields.update

      objCDOSYS.Send
      Set objCDOFields = Nothing
      Set objCDOConf = Nothing
      Set objCDOSYS = Nothing

Ant*_*nes 5

改为UTF-8字符集值得一试: -

objCDOSYS.HTMLBodyPart.charset = "UTF-8"
Run Code Online (Sandbox Code Playgroud)

我认为这会导致Jirapong尝试编码,但CDOSYS会为你做.不幸的是,我知道它不适用于电子邮件地址中的显示名称.