当我尝试在VBScript中添加MHTML文件作为电子邮件的附件时,ContentMediaType会错误地将其设置为"message/rfc822"(RFC 822).根据我的理解,根据微软的说法,这是正确的,但根据RFC 2557规定它应该是不正确的"multipart/related".这是一个问题,因为大多数(如果不是全部)邮件客户端都将其解释"message/rfc822"为电子邮件.由于文件扩展名".mht"和".mhtml"不匹配的电子邮件的任何有效的文件扩展名,邮件客户端追加的一个".msg",".eml"等来的文件名.当用户打开附件时,它将作为电子邮件消息打开,并且由于MHTML文件和电子邮件的保存方式不同而无法正确显示.
Sub SendEmail(FromAddress, ToAddress, Subject, Body, Attachment)
Call Err.Clear
On Error Resume Next
Schema = "http://schemas.microsoft.com/cdo/configuration/"
Set Configuration = Sys.OleObject("CDO.Configuration")
Configuration.Fields.Item(Schema + "sendusing") = 2
Configuration.Fields.Item(Schema + "smtpserver") = SMTPServer
Configuration.Fields.Item(Schema + "smtpserverport") = 25
Configuration.Fields.Item(Schema + "smtpauthenticate") = 1
' Configuration.Fields.Item(schema + "sendusername") = ""
' Configuration.Fields.Item(schema + "sendpassword") = ""
Call Configuration.Fields.Update
Set Message = Sys.OleObject("CDO.Message") …Run Code Online (Sandbox Code Playgroud)