web-dev-qa-db-ja.com

エラーの取得トランスポートエラーコードは、Asp.Netでメールを送信中に0x80040217でした

メールを送信しようとしています

しかし、このエラーが発生しています。

メッセージをSMTPサーバーに送信できませんでした。トランスポートエラーコードは0x80040217でした。サーバーの応答は利用できませんでした

それについて何か考えている人は助けてください

19
Smily

Gmailのセキュリティ設定で、使用する予定のアドレスからのメッセージ送信が許可されていない場合にも、このエラーが発生することがあります。問題のアカウントの安全性の低いアプリへのアクセスを有効にする必要がありました:

  1. Excelからメールを送信するために使用するアドレスにログインします。
  2. ページにアクセス https://www.google.com/settings/security/lesssecureapps
  3. [安全性の低いアプリを有効にする]をクリックします。
  4. 完了をクリックします。
15
Jacob Fink

これは、SMTPサーバーのユーザー名またはパスワードが間違っているために発生します。通常、サーバーは、1500件のメールを送信したために、スパムのためにアカウントを無効にしていることを意味します。

8

返信いただきありがとうございます、うまくいきました!これは、このオプションを有効にしていないためです: https://www.google.com/settings/security/lesssecureapps 誰かがそれを必要とする場合、これはQlikviewで使用しているVBScriptコードです。

SUB SendMail
    Dim objEmail

    Const cdoSendUsingPort = 2  ' Send the message using SMTP
    Const cdoBasicAuth = 1      ' Clear-text authentication
    Const cdoTimeout = 60       ' Timeout for SMTP in seconds

     mailServer = "smtp.gmail.com"
     SMTPport = 465     '25 'SMTPport = 465
     mailusername = "marcos.esgu**@gmail.com"
     mailpassword = "Ki***"

     mailto = "marcos.esgu**@*****" 
     mailSubject = "my test-deleteme" 
     mailBody = "This is the email body" 

    Set objEmail = CreateObject("CDO.Message")
    Set objConf = objEmail.Configuration
    Set objFlds = objConf.Fields

    With objFlds
        .Item("http://schemas.Microsoft.com/cdo/configuration/sendusing") = cdoSendUsingPort
        .Item("http://schemas.Microsoft.com/cdo/configuration/smtpserver") = mailServer
    .Item("http://schemas.Microsoft.com/cdo/configuration/smtpserverport") = SMTPport
    .Item("http://schemas.Microsoft.com/cdo/configuration/smtpusessl") = True
        .Item("http://schemas.Microsoft.com/cdo/configuration/smtpconnectiontimeout") = cdoTimeout
    .Item("http://schemas.Microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasicAuth
    .Item("http://schemas.Microsoft.com/cdo/configuration/sendusername") = mailusername
    .Item("http://schemas.Microsoft.com/cdo/configuration/sendpassword") = mailpassword
        .Update
    End With

    objEmail.To = mailto
    objEmail.From = mailusername
    objEmail.Subject = mailSubject
    objEmail.TextBody = mailBody
    'objEmail.AddAttachment "C:\report.pdf"
    objEmail.Send

    Set objFlds = Nothing
    Set objConf = Nothing
    Set objEmail = Nothing
END SUB
3
Marcos

アダプターのデフォルトハンドラーがNTLM認証(デフォルト)を使用するように指定しているBizTalkを使用しても同じ問題が発生しました。送信ポートのプロパティでハンドラーをオーバーライドするように指定しましたが、BizTalkではアダプターの既定のハンドラーをオーバーライドできませんでした。アダプターを動作させるために、アダプターのデフォルトハンドラーを変更する必要がありました。

動作するようになりました!

1
JERKER