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です。
update - 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"
認証を使用している場合、これを指定するには別の設定行が必要です。たとえば、 'myMail.Configuration.Fields.Item(" http://schemas.microsoft.com/cdo/configuration/smtpauthenticate ")= 1'基本認証を使用している場合このリンクは役に立つかもしれませんhttp://www.powerasp.net/content/new/sending_email_cdosys.asp – John
私はそれを試みましたが、それは残念ながら同じエラーを生成します。 私はSMTPのために使ってみたgmailアカウントも持っていますが、私はそれを動作させることができません。 – chenks
Gmailの試行を含めて元の質問を更新しました。これも失敗します。 – chenks