OCNとGmailの送信サーバーについて

このQ&Aのポイント
  • OCNとGmailの送信サーバーについて調査しました。OCNの有料メールを使用している方がC#の送信プログラムでGmailの送信サーバーを利用しようとした場合、エラーが発生することがあります。
  • 具体的には、OCNのSMTPサーバーをGmailの送信サーバーに変更し、fromAddressもGmailのメールアドレスに設定したところ、送信できないというエラーが表示されました。
  • このため、GmailはOCNの送信サーバーの代わりになることはできないようです。OCNの有料メールを利用している場合は、OCNのメールサーバーを利用する必要があります。
回答を見る
  • ベストアンサー

OCNとGmailの送信サーバー???

従来わたしはOCNの有料メールを使用しています そのOCNメールサーバーを使いC#の送信プログラムを作って利用しています 概略は以下の通りです // SMTPサーバーを指定する SmtpClient client = new SmtpClient("smtp.vccube.ocn.ne.jp"); ・・・(1) //送信元、あて先、件名、本文を設定する string fromAddress = "MyOCNaddress@cube.ocn.ne.jp"; ・・・・・・(2) string toAddress = "MyAddress@MyCompany.com"; string subject = "題名"; string body = "内容"; //送信する client.Send(fromAddress, toAddress, subject, body); 今回Gmailの無料メールアドレスを取得し上記のプログラムを修正致しました (1)をGmailの送信サーバー SmtpClient client = new SmtpClient("smtp.gmail.com"); (2)を私が取得したGmailのメールアドレス string fromAddress = "MyGmailAddress@gmail.com"; として実行すると『送信できませんでした』とのダイアログが表示されます GmailはOCNの送信サーバーの代わりになってくれないのでしょうか? なおC#が表示したエラーは以下の通りです System.Net.Mail.SmtpException' の初回例外が System.dll で発生しました。 プログラム '[4596] net397.vshost.exe: マネージ (v2.0.50727)' はコード 0 (0x0) で終了しました。

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

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

実際に送信したことはありませんが、GMailの設定方法を見ると、SMTP認証とTLSもしくはSSLが必要となっていますので、この部分が問題なんじゃないでしょうか。 http://mail.google.com/support/bin/answer.py?hl=ja&answer=13287 SSLを使用した場合のサンプルがMSDNライブラリにありました。 SmtpClient.EnableSsl プロパティ http://msdn.microsoft.com/ja-jp/library/system.net.mail.smtpclient.enablessl.aspx#Y928

sato-may
質問者

お礼

ありがとうございます お教え頂いたサンプルを参考にして SmtpClient.EnableSsl プロパティをtrue またパスワードも設定したら一発OKでした 今後も宜しくお願い申し上げます ありがとうございました

関連するQ&A

  • メールの送信について

    現在、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

  • 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]を変更しても送信できませんでした。

  • Gmailの送信サーバーだけ使えますか?

    プロバイダから支給されているメールアドレスをメールソフトBeckyにて使っています。ただどうも、送信サーバーの調子がおかしいようで、ごくまれに送信済みのメールが、相手に届いていないことがあるようです。受信には問題はないように思えます。 そこでGmailのSMTP送信サーバーを使うことはできますでしょうか? メールソフト設定で、送信主アドレスとPOPサーバーはプロバイダのままで、SMTPだけをGmailに変えることはできますか?

  • yahoo送信サーバーの使い方???

    先日も別の所で類似の質問をさせて頂き多数の方々から暖かいご指導を受けることが出来ました しかし私は生来血の巡りが悪く今ひとつ理解が出来ません そこで誠に申し訳ありませんが再度質問させて頂きます SMTPプログラムを作りました GAIL、hotmail、OCN、liverdoorの各送信サーバーでは問題なく送信出来ます しかしyahoo送信サーバーを使用するとエラーになります プログラムの主要部分は次の通りです { SmtpClient smtp = new SmtpClient(); smtp.SendCompleted += new SendCompletedEventHandler(smtp_SendCompleted); smtp.Host = "smtp.mail.yahoo.co.jp"; //yahoo送信サーバー名 smtp.Port = 587 //ポート番号 smtp.Credentials = new System.Net.NetworkCredential("○○○@yahoo.co.jp", "MyPassWord"); //認証 ***** (2) smtp.EnableSsl = true; //SSL有り ******************************* (1) MailMessage mm = new MailMessage(); mm.Subject = "電文タイトル"; mm.Body = "電文内容"; mm.From = new System.Net.Mail.MailAddress("○○○@yahoo.co.jp", "私の名前"); mm.To.Add(new System.Net.Mail.MailAddress("相手のメールアドレス", "相手の名前")); smtp.SendAsync(mm, mm); //送信開始 } private void smtp_SendCompleted(object sender, System.ComponentModel.AsyncCompletedEventArgs e) { MailMessage msg = (MailMessage)e.UserState; if (e.Cancelled) { MessageBox.Show(this,"送信中止","送信プロ",MessageBoxButtons.OK,MessageBoxIcon.Information); } else { if (e.Error != null) { MessageBox.Show(this, "送信エラー発生" + "\r\n" + e.Error.ToString(),"送信プロ",MessageBoxButtons.OK, MessageBoxIcon.Hand);} else { MessageBox.Show(this,"送信完了","送信プロ",MessageBoxButtons.OK,MessageBoxIcon.Information);} } msg.Dispose(); //送信メッセージ廃棄 } 上記の設定で送信依頼を出すと 『サーバーはセキュリテイで保護された接続をサポートしていません』とのエラーになります そこで(1)の部分をfalseすると 『SMTPサーバーにセキュリテイで保護された接続が必要であるか、またはクライアントが認証されていません』とのエラーになります (2)の送信者メールアドレスとパスワードは日常thunderbirdやOutLookで使用しているものでありOKのはずです yahoo送信サーバーには特殊な設定が必要なのでしょうか? OutLookを準用して設定しておるつもりですが解決できません ぜひご指導宜しくお願い申しあげます 【追伸】 thunderbirdの自動設定ではポート番号は465になっていましたので、465でテストしてみましたが結果は同一でした yahoo送信サーバーを使用するには yahooデリバーに登録していなければならないとの意見がありましたので登録してみましたが結果は同じです

  • 心配で夜寝ていられません!!!

    C#で作成した送信プログラムでOCNメールサーバーを経由してメールを送っています 送信部の主要部分は次の4行だけであり、実際に相手にメールが届きます System.Net.Mail.SmtpClient smtp = new SmtpClient("smtp.zzzzz.ocn.ne.jp");  ・・・(1) MailMessage oMsg = new MailMessage("MyOCNmailAddress@cube.ocn.ne.jp"・・・(2) , "xxxxx@yyyyy.com", "件名", "内容"); smtp.Send(oMsg); oMsg.Dispose(); ご覧の通り何処にもパスワードの設定がありません 換言するとOCNのメールサーバー名(1)と私のメールアドレス(2)を知ってさえいれば、誰でもが私に成りすましてメールを送ることが出来てしまいます 恐ろしいことです、私の恐怖は単なる杞憂でしょうか??? それとも現実に誰かが私の名前を騙って・・・・・

  • 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などを教えていただけると助かります。 よろしくお願いします。

  • 世間さまでは平気な顔で使っていますが・・・・???

    開示されたサンプルを参考にして、Gmailサーバーを使用したメール送信プログラムを作りました 十分に機能しております System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient(); smtp.Host = "smtp.gmail.com"; smtp.Credentials = new System.Net.NetworkCredential("MyGmailAddress@gmail.com", "MyPassWord"); smtp.EnableSsl = true; string MailSubject = "質問があります!"; string MailBody = "これは Google 利用規則違反ですか?"; MailMessage oMsg = new MailMessage("MyGmailAddress@gmail.com", "MyFreindAddress@mail.goo.ne.jp", MailSubject, MailBody); smtp.Send(oMsg); oMsg.Dispose(); でもこのプログラムは自作のものでありGoogle社の提供したものではありません Googleのサービス利用規第5条第3項には、『Google が提供するインタフェース以外の手段で、本サービスのいずれにもアクセスしないこと』とあります GmailはGoogle社のサービスであり、自作のプログラムはGoogle社の提供するインターフェースではありません だから自作のプログラムでGmailサーバーを使うのはアウト??~??~??? でもGmailのSMTPプログラムのサンプルはゴロゴロあります どう考えたら良いのでしょうか  参考】Googleサービス利用規則第5条第3項 5.3 Google が提供するインタフェース以外の手段で、本サービスのいずれにもアクセスしないこと(またはアクセスを試みないこと)に同意するものとします。ただし、Google との別個の契約において明確な許可を受けた場合は除きます。特に、ユーザーは、いかなる本サービスについても、いかなる自動化された方法(スクリプトやウェブ クローラーの利用によるものを含みます)によりアクセスせず、アクセスを試みないことに同意し、また、本サービスに関して提示されるいかなる robots.txt ファイルにおける指示に従うものとします。

  • 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) の前に追加しても同じ結果でした。 どのようにすれば送信できるか教えてください。

  • thunderbirdでgmailメール送信

    2017.5.14に気づいたのですが、 thunderbirdでgmailメール送信する際にエラーが出るようになりました。 メッセージは以下の通りです。 メッセージを送信できませんでした。 送信 (SMTP) サーバー smtp.gmail.com との接続がタイムアウトしたため、メッセージを送信できませんでした。再度試してください。 考えられる原因やgmail側の設定仕様が変更になったのでしょうか? 詳しい方いらっしゃいましたら、教えてください よろしくお願いします。

  • C#でメール送信

    C#の System.Text.Encoding enc = System.Text.Encoding.GetEncoding(50220); System.Net.Mail.SmtpClient sc = new System.Net.Mail.SmtpClient(); //SMTPサーバーを指定する sc.Host = "localhost"; //メッセージを送信する sc.Send(msg); で送信したメールと メーラー(Becky)で送信したメールでは Subjectなどの変換後の文字コードが全く違うものとなっており、 そのためか、文字化けしてしまいます。 メーラーと同じような変換で文字化けせずにメールを送信するには、 どのようにしたらいいのでしょうか?

専門家に質問してみよう