###実現させたいこと
まず、ゲーム上のText
で取得した数値2つを「VS」という風に、文章を作成し、C#から、メールを送信したいです。
###作成したプログラム
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4using UnityEngine.UI; 5 6public class SendMail : MonoBehaviour 7{ 8 public Text text; 9 public Text text1; 10 public InputField IP; 11 12 // Start is called before the first frame update 13 void Start() 14 { 15 text = text.GetComponent<Text>(); 16 text1 = text1.GetComponent<Text>(); 17 IP = IP.GetComponent<InputField>(); 18 } 19 20 // Update is called once per frame 21 void Update() 22 { 23 24 } 25 26 public void OnClick() 27 { 28 //送信者 29 string senderMail = "*****@*****"; 30 //宛先 31 string recipientMail = "*****@*****"; 32 //件名 33 string subject = "result of game"; 34 //本文 35 string body = text.text + " vs " + text1.text; 36 37 System.Net.Mail.SmtpClient sc = new System.Net.Mail.SmtpClient(); 38 sc.Host = "192.168.**.**"; 39 sc.Port = 25; 40 sc.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; 41 sc.Send(senderMail, recipientMail, subject, body); 42 sc.Dispose(); 43} 44
###上記のプログラムにおいて変更したところ
- 個人情報保護のため、メールアドレス(2か所)を*****@*****"に変更。
- IPアドレス(192.168から始まる)の1部を***に変更。
※IPアドレスは、コマンドプロンプトにて、ipconfigで確認済み。
###このプログラムを実行した結果
SocketException:対象のコンピューターによって拒否されたため、接続できませんでした。
と表示される。
どうすればよいでしょうか。ご回答お願いします。
メールを送るには SMTP サーバーというものが動いてるマシンと通信する必要があり、それが 192.168.**.** ってことになりますが、このマシンで SMTP サーバーは動いてますか?(ちなみに、192.168.**.** はローカルアドレスなので、伏せる意味はほとんどありません。)
ご回答ありがとうございます。
誠に恐縮ではございますが、SMTPサーバーが動いているかを確認するには、どのようにすれば用意のでしょうか。
その前に、192.168.**.** がどのマシンか確認しましょう。もしかして C# プログラムを動かしてるパソコンですか?
192.168.**.**は、C#を動かしているパソコンです。
このパソコンで動かし(送信)、このパソコンでメールを受信する、といった感じです。
情報量が足りなくて、誠に失礼いたしました。
なるほど。そのパソコンで SMTP サーバー(メールサーバー)が動いてなければメールは送信できません。
が、普通は自分のパソコンで動かすものではないので、ご契約のプロバイダのメール設定をご確認ください。
質問者さんがここ Teratail にはどのように投稿してますか? 質問者さんが契約しているインターネット・サービス・プロバイダー (ISP) 経由ですよね。そうであれば、その ISP がメールサービスも提供してますよね。とりあえずそこを質問者さんのメールの送信先に設定して試してみてははいかがですか? 自分のパソコン相手では絶対ダメだと思いますよ。
「ゲーム上のテキスト」と書かれていますが、開発中の今は「このPC」だけれども、最終的は「ゲームをダウンロードして下さった方のPC」だったりしませんか?
プログラミングの前にメールの仕組みを理解してください。
解ってないことに対するプログラムは書けません。
私の一番好きなページ↓
http://www5e.biglobe.ne.jp/aji/3min/78.html
SurferOnWww様
ご回答ありがとうございます。いったん、ISPが提供しているメールサービスを使用したところ、送信することができました!誠にありがとうございます。
___________________________________
Q71様
ご回答ありがとうございます。現在作成中のものは、自分の家だけで使うので、特にその辺は問題ありません。ご迷惑をおかけいたしました。
___________________________________
hihijiji様
ご回答ありがとうございます。付属のサイトを確認し、メールの仕組みをとてもよく理解しました。こんな素晴らしいサイトがあったのですね!誠に、ありがとうございました。
回答2件
あなたの回答
tips
プレビュー