vb2005のメール送信について

このQ&Aのポイント
  • vb2005のメール送信についての問題を解決する方法を教えてください
  • メール送信が突然できなくなった問題の原因と解決方法を教えてください
  • vb2005のメール送信に関するエラーメッセージ「System.Net.Mail.SmtpException:SMTPサーバーにセキュリティで保護された接続が必要であるか、またはクライアントが認証されていません。サーバーの応答:5.5.1 Authentication Required.Learn More at」の解決方法を教えてください
回答を見る
  • ベストアンサー

vb2005のメール送信について

定期的にメール送信するプログラムがあります、 05/15 4:00までは正常にメール送信していたのですが、 突然メールが送信されなくなりました。 原因を調査したところ 以下ソースの Client.Send(Message) にてエラーが発生している事がわかり、 エラー内容は 「System.Net.Mail.SmtpException:SMTPサーバーに  セキュリティで保護された接続が必要であるか、  またはクライアントが認証されていません。  サーバーの応答:5.5.1 Authentication Required.Learn More at」です。 デバッグにてユーザーIDとパスワードが入っている事を確認し、 WebのGmailにユーザーIDとパスワードにてログイン可能であることも確認しました、 どなたか解決方法をご教授願えませんか? 以下ソースの一部です。 ******************************************************************** ******************************************************************** '********************************************** 'クライアントサーバーを設定・実体作成 Dim Client As New SmtpClient(MailSmtpClient) 'ポート使用する。 Client.Port = 587 Client.EnableSsl = True Client.Timeout = 100000 'クライアント情報(送信元のユーザーIDとパスワードをセット) Client.Credentials = New Net.NetworkCredential(MailUserID, _ MailPassWord) Try 'メール送信 Client.Send(Message) Catch ex As Exception MsgBox(ex.ToString) End Try ********************************************************************** **********************************************************************

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

こんばんは。 > サーバーの応答:5.5.1 Authentication Required.Learn More at」です。 smtp がこのように返しているので、その時間帯に smtp に問題があるんでしょう。 なんか、 > WebのGmailにユーザーIDとパスワードにてログイン可能であることも確認しました、 と書いてるので、Google の、認証が必要なsmtp サーバーを使ってるんですかね。 もしそうなら、JST の 4:00 は、アメリカ西海岸だと、お昼の 12:00 なんで、なんかやってたんじゃないでしょうか。 ソースコードをいじってなんとかなる問題でもないようなので、日本に、安定稼動する smtp を立てるか、そのようなサーバーを利用されることをおすすめします。    

関連するQ&A

  • VB2005でメール送信するには

    http://www.microsoft.com/japan/msdn/vbasic/migration/tips/netmail/ を参考に Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Try Dim message As New System.Net.Mail.MailMessage("from@yahoo.co.jp", "to@yahoo.co.jp") message.Subject = "件名" message.Body = "本文" Dim client As New System.Net.Mail.SmtpClient("smtp.mail.yahoo.co.jp", "587") client.Send(message) MessageBox.Show("メールを送信しました。", "送信終了") Catch ex As Exception MessageBox.Show(ex.Message, "エラー") End Try End Sub 実行すると SMTPサーバにセキュリティで保護された接続が必要であるか、またはクライアントが認証されていません。サーバの応答:Sorry,please use SMTP-AUTH instead と表示されます。 ユーザ認証の client.Credentials = New System.Net.NetworkCredential("from-userName", "from-Password") を client.Send(message) の前に追加しても同じ結果でした。 どのようにすれば送信できるか教えてください。

  • VB.NETからGmail経由でメールを送信について

    VB.NETからGmail経由でメールを送信について いつも大変お世話になっています。 VB.NETからGmail経由でメールを送信についてご教授願います。 Dim mailMessage As New System.Net.Mail.MailMessage _ ([送信元アドレス], [送信先アドレス], "題名", "本文") Dim smtpClient As New System.Net.Mail.SmtpClient _ ("smtp.gmail.com") smtpClient.Credentials = New System.Net.NetworkCredential _ ([送信元アドレス], "パスワード") ' << ※1 'smtpClient.EnableSsl = True ’<< ※2 smtpClient.Port = 587 smtpClient.Timeout = 10000 smtpClient.Send(mailMessage) <問題> 「送信できませんでした」とのエラーメッセージが表示。 <所感> ※1で[送信元アドレス]を設定しているのが原因?? ※2[True]/[False]を変更しても送信できませんでした。

  • メールの送信について

    現在、VBAを学習中なのですがメールの送信がどうしてもできません。 以下にコードを記述しますので、間違えている点などありましたら、ご指摘ください。 よろしくお願いいたします。 Imports System.Net.Mail Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim mailMessage As New System.Net.Mail.MailMessage("usename@gmail.com", "usename@hotmail.co.jp", "Subject", "Body") Dim smtpClient As New System.Net.Mail.SmtpClient("smtp.gmail.com") smtpClient.Credentials = New System.Net.NetworkCredential("usename@gmail.com", "pass") smtpClient.EnableSsl = False smtpClient.Port = 587 Try ' 送信する smtpClient.Send(mailMessage) MessageBox.Show("送信しました") Catch ex As SmtpException ' SMTPサーバーへの接続に失敗した場合 MessageBox.Show(ex.Message) End Try End Sub End Class

  • C# メール送信ついて困っています

    c#で送信をしょうとしたらエラーが出ています。 ※自分のプロバイダー(biglobe)を使ってメールの例です。 //Mail Initialize System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient() smtp.Host = "mail.biglobe.ne.jp"; smtp.Port = 587; //Mail認証 smtp.Credentials = new System.Net.NetworkCredential("ユーザー名", "パスワード"); //SSL smtp.EnableSsl =true; System.Net.Mail.MailMessage oMsg = new System.Net.Mail.MailMessage("to アドレス", "from アドレス", "件名", "本文"); //メール送信 smtp.Send(oMsg); これを実施したらエラーが サーバーはセキュリティで保護された接続をサポートしていません。って出ています。 //SSLをfalseにしたら smtp.EnableSsl =false; メールボックスが使用できません。 サーバーの応答: Can not speak with youって出ています。 どこがいけないのでしょうか? どなたか教えて戴けませんか?お願いいたします。

  • Visual C#でのメール送信

    OS:Windows XP 言語:C# (Visual Studio 2005 Express) 以上の環境で、yahooのフリーアドレスからメールを送信するアプリケーションの作成をしようとしてます。 いろいろ参考にして以下のコードを書いてみましたがうまくいきません。 from = 送信元アドレス; to = あて先アドレス; subject = "テスト"; body = "テスト"; id = yahooID; pass = yahooのパスワード; MailMessage msg = new MailMessage(from, to, subject, body); SmtpClient sc = new SmtpClient("smtp.mail.yahoo.co.jp", 587); sc.Credentials = new System.Net.NetworkCredential(id, pass); sc.EnableSsl = false; sc.Timeout = 100000; sc.Send(msg); msg.Dispose(); エラーの内容は以下になります。 MTP サーバーにセキュリティで保護された接続が必要であるか、またはクライアントが認証されていません。 サーバーの応答: Sorry, please use SMTP-AUTH instead - for help go to http://help.yahoo.co.jp/help/jp/mail/whatisymail/whatisymail-51.html どなたか解決方法、あるいは参考HPなどを教えていただけると助かります。 よろしくお願いします。

  • VB.NETでフリーメールアドレスにメール送信できない

    VisualStudio2005で開発をしています。 SmtpClientクラスを使ってメールを自動送信するアプリを作成中なのですが、 社内サーバー同士でのメール送信は問題ないのですが、社外のメールサーバーのアドレスを指定した場合に、メールが送信されなくて困っています。 ○例:)yyyyyy@xxxxxx.co.jp → zzzzzz@xxxxxx.co.jp ×例:)yyyyyy@xxxxxx.co.jp → zzzzzz@zzzzz.com 調べてはみたのですが、原因を特定することができなかったので質問させていただきました。 1.googleやyahooなどのメールサーバーに対してでもメール送信できるようにしたいのですが、どの様にすればいいでしょうか? 2.上記のように書きましたが、本当はメールサーバまでは送信されていて、クライアントが受け取れていないという可能性もあるのでしょうか? 皆様のお力を借りたく思います。 どうかよろしくお願いいたします。 ↓↓↓以下、現在作成中のソースコード↓↓↓ Private Sub btn_Send_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Send.Click '送信者 Dim senderMail As String = "xxxxx@yyyyy.co.jp" ''宛先 Dim recipientMail As String = "xxxxx@yyyyy.com" '件名 Dim subject As String = "タイトル" '本文 Dim body As String = "本文1行目" + vbCrLf + vbCrLf + "本文3行目" Dim sc As New System.Net.Mail.SmtpClient() ' メールメッセージインスタンスの生成 Dim objMessage As New System.Net.Mail.MailMessage(senderMail, recipientMail, subject, body) 'SMTPサーバーを指定する sc.Host = "mail.yyyyy.co.jp" sc.Port = 25 'メールを送信する sc.Send(objMessage) End Sub

  • VB.net 2008 でメールを送信するには。

    初めて質問します。 VB.net初心者です。 使用環境はVisual Studio2008でVB.netを使いフォームを作成し、その中にメール送付という ボタンを作り、それに下記のプログラムを書きました。 Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click Dim senderMail As String = "katsumi@aaa.bz"<--変更しています。 '宛先 Dim recipientMail As String = "katsumi@aaa.bz" '件名 Dim subject As String = "こんにちは" '本文 Dim body As String = "こんにちは。" Dim sc As New System.Net.Mail.SmtpClient() 'SMTPサーバーを指定する sc.Host = "smtp.aaa.bz" 'メールを送信する sc.Send(senderMail, recipientMail, subject, body) <---ここで止まる End Sub デバックを押すとホームまでは立ち上がります。 Button10をクリックすると sc.Send(senderMail, recipientMail, subject, body) の所で SmtpExceptionはハンドルされませんでした。 メールは送信されませんでした。 として黄色のバックカラーになります。 原因が判りません。 参照設定などに問題があるのでしょうか。 ご存知の方教えてください。

  • C# SmtpでYahooサーバーから送信

    お世話になります。 VCS2010Expressで、簡単なメールソフトを作成しようとしているのですが、 SmtpExceptionが発生してしまい、送ることができません。 Yahoo側の設定も、正しく行ったと思うのですが、原因の解る方、 ご助力をお願いいたします。 ================================================================= private void button1_Click(object sender, EventArgs e) { SmtpClient sm = new SmtpClient("smtp.mail.yahoo.co.jp", 25); sm.Credentials = new System.Net.NetworkCredential("ログイン名","パスワード"); sm.Send("自分@yahoo.co.jp","宛先@yahoo.co.jp", "b", "c"); MessageBox.Show("きちんと送れたようです。"); } ======================================================================= Yahoo側でも、Yahooでリバーとやらの設定も有効にし、 下記のサイトで書かれている内容も確認しました。 http://www.yahoo-help.jp/app/answers/detail/p/565/a_id/47648 http://www.yahoo-help.jp/app/answers/detail/p/536/a_id/43934/faq/pc-home しかし、その結果SmtpException、メールを送信できませんでした。(添付図) と出てしまいます。 原因と対策を、何卒よろしくお願いいたします。

  • メール、受信できるのに送信できません

     先日からメールの受信は問題なく出来るのに、送信しようとすると、  サーバー名 mail.gol.com ユーザー名「  」 パスワード「  」 というのが出てきて、そこに何度、正しいIDとパスワードを入れても送信できません。どうしてなのでしょうか。 わかる方がいらっしゃいましたら教えてください。

  • VB2005で作ったメール送信プログラムで、メール本文が文字化けしてしまいます。

    VB2005でメール送信プログラムを作ったのですが、送信したBODYが文字化けしてしまいます。どう修正すればよいか、教えてください。 以下がそのコードです。 Imports System.Net.mail Public Class Form1 Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click Dim tc As Sockets.TcpClient Dim ns As Sockets.NetworkStream Dim stat As String Dim mailData As String Dim mailFrom As String = "", mailSubject As String = "", mailBody As String = "" Dim r As Regex Dim m As Match Dim mailCount As Integer Try tc = New Sockets.TcpClient() tc.Connect(txtPOP3Server.Text, 110) ns = tc.GetStream Dim buff(tc.ReceiveBufferSize) As Byte ns.Read(buff, 0, tc.ReceiveBufferSize) POP3Transmit(ns, "USER " & txtUserName.Text, False) POP3Transmit(ns, "PASS " & txtPassword.Text, False) stat = POP3Transmit(ns, "STAT", False) r = New Regex("\+OK (.*) (.*)") m = r.Match(stat) mailCount = Val(m.Groups(1).Value) If mailCount = 0 Then MsgBox("メールはありません") Else mailData = POP3Transmit(ns, "RETR " & mailCount, True) ParseMail(mailData, mailFrom, mailSubject, mailBody) txtBody.Text = mailBody txtFrom.Text = mailFrom txtSubject.Text = mailSubject End If Dim smtpClt As New Net.Mail.SmtpClient("smtp.mail.yahoo.co.jp", 25) Dim from As String = "****@yahoo.co.jp" Dim toYou As String = DataGridView1(1, 0).Value Dim subject As String = TextBox2.Text Dim body As String = TextBox1.Text Try smtpClt.Send(from, toYou, subject, body) Timer2.Enabled = True ToolStripStatusLabel2.Text = "送信しました。" Catch ex As Exception MessageBox.Show(ex.Message) End Try POP3Transmit(ns, "QUIT", False) ns.Close() tc.Close() Catch ex As Exception MsgBox("メールの受信に失敗しました") End Try End Sub End Class

専門家に質問してみよう