2016-04-06 62 views
0

我試圖使用CDO.Message從我的Web服務器發送電子郵件。 發送到內部電子郵件地址時一切正常,但發送到外部郵件時失敗。使用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" 
+1

如果您使用身份驗證,那麼您需要另一個配置行來指定 - 例如'myMail.Configuration.Fields.Item(「http://schemas.microsoft.com/cdo/configuration/smtpauthenticate」)= 1'如果你使用基本認證。這個鏈接可能是有用的http://www.powerasp.net/content/new/sending_email_cdosys.asp – John

+0

我已經嘗試過,它不幸仍然會產生相同的錯誤。 我也有一個Gmail的帳戶,我試圖用於SMTP,我也無法讓它工作。 – chenks

+0

我已經更新了原始問題以包含我的Gmail嘗試 - 這也失敗了。 – chenks

回答

0

以及我最終得到了這個解決。 但我們最終使用了不同的郵件提供程序,它允許通過身份驗證的SMTP中繼。

相關問題