邮件发送失败。无法将数据写入传输连接

2023-11-23

我正在使用 Gmail SMTP 服务器从 VB.Net 发送邮件。尽管它可以正常发送一些电子邮件,但对于其他一些电子邮件,它会返回以下错误:

邮件发送失败。无法将数据写入传输连接 System.Net.Sockets.SocketException:主机中的软件中止了已建立的连接


我最近遇到了同样的问题SmtpClient.SendMail(MailMessage)与带有 350k 附件的电子邮件重复使用。每第 33 条消息,就会出现您给出的错误。

结果我们封装了 SendMail 功能的共享组件没有调用Dispose() on the SmtpClient消息发送完成后的类。

Adding client.Dispose()到 SmtpClient 实例立即解决了问题,现在消息发送没有问题 - 数百条消息(是的,它们是给我们客户的合法产品通知,而不是垃圾邮件);)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

邮件发送失败。无法将数据写入传输连接 的相关文章

  • 如何将System.Windows dll添加到Visual Studio 2010 Express?

    我正在开发一个小型应用程序C and VS2010 as IDE with NET框架4 我想用CaptureSource类以便从笔记本电脑的网络摄像头捕获视频 为此我需要添加一个命名空间System Windows DependencyO
  • 当我的进程被终止时到底会发生什么?

    我有一个包含本机代码和托管代码的混合进程 在 Windows Server 2003 上运行 当我从进程资源管理器中终止进程时 它会进入 100 cpu 的状态 并在消失之前保持这种状态一段时间 有时甚至 10 分钟 在此期间我无法 杀死
  • 如果我传入的日期格式为 YYYYMMDD,则将字符串转换为 .NET 中的日期

    如果我传入的日期格式为 C 中将字符串转换为日期的最佳方法是什么YYYYMMDD Ex 20001106 使用 DateTime ParseExact 就像是 string date 20100102 DateTime datetime D
  • ODP.NET 可以重新分发吗? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 Oracle ODP NET 库是否可重新分发 例如 我是否可以简单地将 Oracle DataAccess dll 包含在我的应用程序中
  • DataGridView 数据绑定到 List>

    给定代码 class Foo public string Value get set public int Id get set List
  • WPF MVVM 应用程序服务层中的 ObservableCollection

    我在 Internet 上看到的 WPF MVVM 应用程序示例将 VM 视为与服务层交互的层 该服务层要么使用外部库中的 旧 事件 要么使用 HTTP 或其他方式与 Web 交互 但是如果我自己构建所有 M V VM 服务和其他部分怎么办
  • 为什么在从同一解决方案引用另一个项目时会出现 FileNotFound 异常?

    我正在学习如何使用 NUnit 我的解决方案中有我的主项目 并在同一解决方案中创建了一个单独的项目 该项目将保存我的单元测试 并具有自己的命名空间 从该项目中 我添加对主项目的引用并添加 using MainProjectNamespace
  • 我们可以使用 C# 录制发送到扬声器的声音吗

    我有一个软件 SoundTap Streaming Audio Recorder 它记录发送到扬声器的任何音频 无论流是来自网络还是来自某些文件或麦克风 我可以在桌面应用程序中制作这样的应用程序 以便我可以录制发送到扬声器的流 无论来源如何
  • 带 ref 参数的委托

    有没有办法在下面的代码中维护相同的功能 但不必创建委托 我正在与第 3 方 API 进行交互 其中包含许多不同的 DeleteSomethingX ref IntPtr ptr 方法 并且我正在尝试集中 IntPtr Zero 检查的代码
  • 在更新面板中提交表单后运行javascript?

    这真让我抓狂 我在这里阅读了至少 5 个与我的问题密切相关的问题 可能还通过谷歌搜索阅读了 5 页左右的内 容 我就是不明白 我试图在用户填写 已提交注册 的表单后出现一个 jqueryui 对话框 然后重定向到另一个页面 但我一生都无法让
  • C++/CLI 中的 ref 和 out

    我知道 C CLI 代码 void foo Bar x 转变为 Void foo ref Bar x 变成的 C CLI 代码是什么 Void foo out Bar x 您可以使用 OutAttribute using namespace
  • NHibernate HQL 相当于 T-SQL 的 TOP 关键字

    NHibernate HQL 相当于 T SQL 的 TOP 关键字是什么 另外 用非 HQL 方式说 给我一门课的前 15 个 是什么意思 在 HQL 中这实际上非常简单 var top15 session CreateQuery fro
  • 如何使用线程使 Windows 服务长期运行

    我有一个 win 服务托管一些我需要保持长时间运行的工作流程 一个 WorkflowApplication 和一个 WorkflowServiceHost 因为 OnStart 要求它完成并返回操作系统 所以我有一个在线程池中的另一个线程上
  • “服务 X 的应用程序端点为零”,除非我在代码中添加端点 - 为什么?

    我跟着这篇 MSDN 文章 http msdn microsoft com en us library ms733069 aspx完全创建托管在托管 NT 服务中的 WCF 服务 当我在服务控制台中单击 开始 时 我会在事件查看器中看到以下
  • 如何从 .Net 打印对话框中删除打印机?

    我正在开发一个 Winforms 应用程序 它允许用户打印一些不同的 Reporting Services 报告 不幸的是 如果用户尝试使用 Adob e PDF 打印机打印为 PDF 则会崩溃 我们无法解决此问题 因此作为解决方案 我们希
  • 如何用 C# 发送原始以太网数据包? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 有没有办法通过 C 将原始数据包以太网发送到其他主机 在 Windows 7 中 如果有区别的话 根据 Saint pl 的建议 我找
  • 使用 C# .NET 从操纵杆获取输入

    我在谷歌上搜索了这个 但我想到的唯一的东西已经过时并且不起作用 有人知道如何使用 C NET 获取操纵杆数据吗 由于这是我在研究 C 中的操纵杆 游戏手柄输入时在 google 上获得的最高点击次数 因此我认为我应该发布一个回复供其他人查看
  • 从 ProcessThreadCollection 中按名称获取正在运行的线程

    在搜索了 Stack Overflow 问题并进行了一些谷歌搜索后 我仍然没有得到它 我知道您可以使用 Thread isAlive 方法检查单个线程是否正在运行 但我想检查特定的 FooThread 是否仍在当前进程的所有正在运行的线程之
  • Azure Active Directory 不会使用 ASP.NET Core 2.1 MVC 注销

    我有一个 ASP NET Core 2 1 MVC 应用程序 我正在尝试使用 Azure AD 进行身份验证 该应用程序重定向到 Microsoft 登录页面 但当我注销然后返回到应用程序的主页时 它会自动重新登录 我试过打电话https
  • .NET 4.0 代码可以与 .NET 2.0 代码互操作吗?

    NET 4 0 程序集调用 NET 2 0 程序集中的代码是否存在兼容性障碍 反之亦然 更具体地说 我正在研究在使用基于 NET 2 0 的第三方应用程序时升级到 Visual Studio 2010 该应用程序可通过引用我的自定义代码的挂

随机推荐