問題タブ [smtpclient]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net - リモート メール サーバー経由でメールを送信し、スパム フォルダーに入らないようにするための Web サイト (asp.net)
だから、セットアップはこれです、2つの別々のサーバー...
Web サーバー、IIS7、MS SMTP あり
メール サーバーには MailEnable があります
Web サーバーで、ASP.Net アプリからメール サーバー経由でメールを送信していますが、スパムとしてマークされています。
通常のメール クライアントからメール サーバー経由でメールを送信すると、スパムとしてマークされません。
これはセットアップの問題だと確信していますが、何が間違っている可能性がありますか?
web.config:
asp.net、通常の SmtpClient 送信:
ランダムな直感では、おそらくローカルSMTPサーバーを介して送信し、次にMailEnableに送信していると考えられ、それにより奇妙なヘッダーが付けられています...ただの考えです
ヘッダーには次の行が含まれます: Received-SPF: softfail (google.com: 移行中のウェブサイトのドメインの最良の推測レコード @mydomain.co.uk は、許可された送信者として不明を指定しません)
意味わかんないけど(怪しい部分)
.net - メール送信時のメモリリーク
事前定義されたスケジュールで電子メールを送信するように構成された Windows サービスがあります。スケジュールは System.Timers.Timer で機能し、Timer_Elapsed が発生するたびに Timer.Stop() を呼び出し、メールを送信し (毎回約 1500 通のメール)、次のティックが発生する時間を計算し、タイマーを開始します ( Timer.Start() メソッドを呼び出す)。問題は、タイマーが経過し、プロセスが電子メールの送信を開始したときに、使用中のメモリが増加しますが、終了後に減少しません。「タイマーなし」アプリケーションで関数を呼び出すと、送信プロセスが終了した後に使用済みメモリが解放されます。なぜこれが起こっているのかを理解するのを手伝ってくれる人はいますか? たぶん、タイマーで使用されるスレッドに関連する何かがありますか?
前もって感謝します。
c# - 電子メールを送信するための C# Windows サービスでのメモリ リーク
これは最近かなり人気のある問題/質問のようですが、問題の解決策が見つからないようです.
メールを送信するための単純な Windows サービスを c# で作成しました。アプリは、メモリ使用量を除いてうまく機能します。アプリのフロント エンドは Web ベースであり、サービスはディレクトリに作成されるテキスト ファイルによってキューに入れられます。テキスト ファイルを読み取った後、サービスは MS SQL データベースからニュースレター情報と電子メール アドレスを収集し、4 秒ごとに 1 つの電子メールの送信を開始します。タスク マネージャーでサービスの実行を見ていると、CPU 使用率が 4 秒ごとに上昇し、すぐに低下することがわかります。一方、メモリはすべてのメールではなく、3 ~ 4 メールごとに 50 ~ 75k 増加しているようです。これは、すべてのメールが送信されるまで増加し続けます。私はちょうど約を送信しました。2100通のメールとメモリ使用量は最大100MBでした。私が気づいたもう一つのことは、すべての電子メールが送信された後、サービスを再起動するまで、メモリ使用量はこの合計で保持されます。サービスがアイドル状態の場合、メモリは約 6500k で実行されます。メーリングの完了後にこのメモリ使用量を減らして処分する方法について、誰か提案はありますか? 私のコードは以下です。どんな助けでも大歓迎です..
c# - SMTP サーバーがメールを送信したかどうかを確認するにはどうすればよいですか?
smtpclient を使用してメールをローカルの smtp サーバーに送信するとします。メールが実際に送信されたかどうかを確認するにはどうすればよいですか?
.net - 両方が同じSMTPサーバーを使用しているのに、MailMessageがASP.NETアプリケーションからではなく、Windowsフォームアプリケーションから任意のアドレスに送信されるのはなぜですか?
ASP.NET WebアプリケーションからSMTPサーバーを介して電子メールを送信するときに、不思議な(私にとって)エラーが発生します。「xxx@yyy.zzzを中継できません」という有名なエラーが表示されます。私にとって不思議なのは、電子メールを通常の.NET Windowsフォームアプリケーションに送信するのとまったく同じコードを切り取って貼り付け、このアプリケーションで電子メールを送信すると、すべて正常に機能することです。これにより、おそらく問題は、Windowsフォームアプリケーションがドメインユーザーアカウントで実行されているときにASP.NETアプリケーションがネットワークサービスとして実行されていることだと思いましたが、別のASP.NETアプリケーションが同じ経由で電子メールを送信していることがわかりました同じIISのNETWORKSERVERで実行されているSMTPサーバーであり、このアプリケーションではこの問題は発生しません。
さらに、ポート25でSMTPサーバーにtelnetを使用し、SMTPプロトコルを手動で実行して、SMTPサーバーを介して手動で電子メールを送信しようとしましたが、すべて正常に機能します。SMTPサーバーは、いかなる種類の認証またはSSLでも構成されていません。
もう1つの不思議な事実は、ASP.NETアプリケーションが同じドメイン内のアドレスから同じドメイン内の電子メールアドレスに電子メールを送信できることですが、ドメイン外のアドレスには送信できません。ただし、まったく同じコードを使用するWindowsフォームアプリケーションは、ドメイン内外の任意のアドレスから任意のアドレスに電子メールを送信できます。
要約すると:
- ASP.NETアプリケーションは、ドメイン内のアドレスからドメイン内のアドレスに電子メールを送信できますが、ドメイン外のアドレスには送信できません。
- 同じコンピューター上で同じコードを実行しているWindowsフォームアプリケーションは、任意のアドレスから任意のアドレスに電子メールを送信できます。
- 同じアカウント(NETWORK SERVICE)で実行されている同じIIS上の別のASP.NETアプリケーションは、同じSMTPサーバーを使用して任意のアドレスから任意のアドレスに電子メールを送信できます。
- SMTPサーバーに認証が構成されていません。
- ASP.NETアプリケーションとWindowsフォームアプリケーションはどちらも、System.Net.Mail.SmtpClientクラスを利用してSystem.Net.Mail.MailMessageを送信します。
電子メールマッサージを送信するコードは次のとおりです。
私が理解できる限り、これはコーディングの問題ではなく、構成の問題であるはずです。誰かが問題が何であるか、そしておそらくこれをどのように解決できるかについての考えを持っていますか?ありがとう!
c# - XP/Vista/Win7 で SmtpClient の動作が異なるのはなぜですか?
Vista/Win7で毎回完全に動作するように見える次のコードを使用しています。
ただし、Windows XP では次のようになります。
確認したところ、Windowsファイアウォールは完全に無効になっています...
c# - SmtpClient を取得して自己署名 SSL 証明書を使用する
System.Net.Mail.SmtpClient クラスを使用して、会社の電子メール サーバー経由で電子メールを中継しようとしています。メール サーバーへのすべての SMTP 接続は SSL である必要があり、自己署名証明書を使用します。警告ダイアログで[OK]をクリックするだけでよいOutlookでは問題ありませんが、SmtpClientに自己署名証明書を受け入れる方法を知っている人はいますか?
このアプリを Windows Azure Platform で使用する予定なので、自己署名証明書を信頼されたルートとしてインストールすることはできません。
c# - MS Exchange からの受信メールの送信方法
カスタム C# アプリケーションから、MS Exchange からメールを作成および送受信するにはどうすればよいですか?
これは、標準フレームワークのメール クラスでは直接不可能であると想定しています。
これが MS Exchange 2003 および 2007 で動作する必要があると言える場合、どのような選択肢がありますか?
理想的には、サードパーティのコンポーネントを購入したくないので、これが c# で可能であれば、新しいメールを送信したり、カスタム アプリケーションにメールを受信したりできるライブラリを作成する手順を教えてください。
C# アプリは、Exchange サーバーと同じネットワーク内のように、ローカルになります。
.net - SMTP をテストするための代替手段は?
電子メールを送信するアプリを開発しようとしていますが、内部ネットワークが非常に厳重にロックされているため、内部メール サーバーを使用して中継することはできません。
no-ip.com のようなものを使用したことのある人はいますか? 他の選択肢はありますか?
c# - smtpclient「メール送信失敗」
これが私のコードです
このループは60,000を超える電子メールを送信します。しかし、私の問題は、一部の電子メールで「メールの送信に失敗する」というメッセージが5000回発生し、残りの電子メールが配信される時間よりも短い時間です。そして、私はそれらすべてのエラーアウトメールが有効なメールアドレスを持っていることを確認しました。何が問題なのかわからない。私は本当にこれで助けが必要です。
編集:これは私の例外トレースです
エラー-メールの送信に失敗しました。; 内部例-System.IO.IOException:トランスポート接続からデータを読み取ることができません:net_io_connectionclosed。System.Net.Mail.SmtpReplyReaderFactory.ProcessRead(Byte [] buffer、Int32 offset、Int32 read、Boolean readLine)at System.Net.Mail.SmtpReplyReaderFactory.ReadLines(SmtpReplyReader caller、Boolean oneLine)at System.Net.Mail.SmtpReplyReaderFactory .ReadLine(SmtpReplyReader caller)at System.Net.Mail.CheckCommand.Send(SmtpConnection conn、String&response)at System.Net.Mail.MailCommand.Send(SmtpConnection conn、Byte [] command、String from)atSystem.Net。 Mail.SmtpTransport.SendMail(MailAddress送信者、MailAddressCollection受信者、文字列deliveryNotify、SmtpFailedRecipientException&例外)