繁体   English   中英

使用 CDO.Message 发送电子邮件 - 发送到外部地址时失败

[英]sending email using CDO.Message - fails when sending to external address

我正在尝试使用 CDO.Message 从我的网络服务器发送电子邮件。 发送到内部电子邮件地址时一切正常,但发送到外部电子邮件地址时失败。

error '8004020f'
sendmail.asp, line 46

第 46 行是myMail.Send

我已经尝试过身份验证(目前已注释掉),没有尝试过,但仍然出现相同的错误。 尝试了我在这里找到的各种建议,但到目前为止没有任何效果。

我假设这是一个身份验证问题,但即使我使用身份验证它也失败了。

“发件人”地址是邮件服务器上的有效真实帐户。 使用的用户/通行证设置用于“发件人”地址。

有任何指示可以指出这一点吗?

Set myMail=CreateObject("CDO.Message")
myMail.Subject="subject_goes_here"
myMail.From="from_email_address"
myMail.To="to_email_address"
myMail.TextBody="body goes here"

myMail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing")=2
myMail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver")="mail_server_address"
myMail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport")=25
'myMail.Configuration.Fields.Item _
'("http://schemas.microsoft.com/cdo/configuration/sendusername") = "username"
'myMail.Configuration.Fields.Item _
'("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"


myMail.Configuration.Fields.Update
myMail.Send
set myMail=nothing

Web 服务器是 Windows Server 2003 R2 上的 IIS6。 邮件服务器是 Exchange。

更新 - 我现在正在尝试使用 gmail 发送电子邮件,但遇到了不同的错误。

CDO.Message.1 error '80040213'
The transport failed to connect to the server.
sendemail.asp, line 48

我使用的代码是

myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver")="smtp.gmail.com"
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport")=465
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing")=2
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 20
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = "gmailusername"
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"

好吧,我最终解决了这个问题。 但我们最终使用了不同的邮件提供商,它允许经过身份验证的 SMTP 中继。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM