私は自分のアプリケーションで使用している電子メールシステムを持っています。vb.netでの電子メール - SMTPサーバーの問題、または匿名の電子メール?
お客様はプログラムを使用して電子メールを送信することもできましたが、アプリケーションの支払いを済ませた後、他の顧客に電子メールを販売しています。
彼らはただ最初の顧客でテストするには、それを撮影したし、彼らは電子メールを送信するトラブルを抱えているので、私はエラーログを調査し、次のメッセージを見た:
をSMTPサーバーはセキュリティで保護さを必要としクライアントが認証されていませんでした。サーバーの応答は5.7.57 SMTPでした。クライアントは今[BN6PR2201CA0027.namprd22.prod.outlook.com]
、MAIL FROMの間に匿名のメールを送信するために認証されなかった、この正確なエラーメッセージをGoogle検索した後、上位の結果は、それがいることを見ることは明らかですした、this questionましたOPは "emailaddress"としてハードコードされた電子メールアドレスからメッセージを送信しようとしていました。しかし、それは私には当てはまりません。次のように
私のコードは次のとおりです。
recipient = eMail
Smtp_Server.UseDefaultCredentials = False
Smtp_Server.Credentials = New Net.NetworkCredential(senderAdd, senderPass)
Smtp_Server.EnableSsl = False
Smtp_Server.Host = SMTPserver
AddHandler Smtp_Server.SendCompleted, AddressOf sendComplete
e_mail = New MailMessage()
e_mail.From = New MailAddress(senderAdd)
e_mail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnSuccess
e_mail.To.Add(eMail)
e_mail.Subject = subj
e_mail.IsBodyHtml = False
e_mail.Body = bod
Smtp_Server.SendAsync(e_mail, userState)
は、このエラーの原因とされるだろう、ここで何がありますか?もしそうなら、それは何ですか? 変数はすべてデータベーステーブルから設定され、ヌル値がある場合、システムはメッセージボックスをポップしてユーザに警告し、サブルーチンを終了して電子メールを送信しないので、nullで問題にはなりません値 - 私が考えることができる唯一のことは、資格情報が間違っているということですが、彼らは正しいと3人の異なる人によって検証されたと思われます。
安全な接続が必要な例外があるため、SSLを有効にしようとしましたか? "Smtp_Server.EnableSsl = True"(SSLは別のポートで実行されるかもしれません。自分のウェブサイト上のメールをgmail経由でルーティングし、SSLもポートを設定する必要があります)。 –