IIS と PHP を実行するサーバーがあります。メールを送信する Web ページが多数あります。一部は私に、一部はユーザーに送信されます。これはすべてうまくいきます。私は Comcast ビジネス クラス アカウントを使用しています。つまり、SMTP サーバーとして smtp.comcast.net を使用でき、ポート 25 を使用でき、優れた認証を一切使用しません。そして、それはうまく機能します。
今日に早送りします。フォルダー構造を監視するためのカスタム C# コードを作成しており、基本的に、特定のパラメーターに一致する場合は新しいファイルをメールで送信します。C# コードで同じ設定を使用しようとしましたが、うまくいきません。SmtpClient.Send() 関数は例外をスローせず、私のコードはすべてが正常に動作しているかのようにルーチンを完了します。しかし、待っても待ってもメールが届かない。
SmtpClient smtp = new SmtpClient("smtp.comcast.net");
smtp.Port = 25;
smtp.EnableSsl = false;
smtp.UseDefaultCredentials = false;
smtp.Timeout = 2500;
smtp.Send(mail);
onStatusUpdate("Successfully sent email to " + mail.To + (mail.CC.Count > 0 ? " and CC'd " + mail.CC.ToString() : ""));
「メール」オブジェクトはタイプ MailMessage であり、To、From、件名、本文、および CC で設定されます。HTML とプレーン テキストの代替ビューもあります。
最も簡単な質問だと思いますが、PHP には存在しない古い学校のポート 25 の方法で C# に電子メールを送信するためのトリックがあるかどうかです。
PHP について言及する唯一の理由は、ファイアウォールがポート 25 をブロックしていないこと、ISP がポートを開いていること、適切なサーバーがあること、動作するはずであることを知っているからです。