【问题标题】:.net smtp listener.net smtp 监听器
【发布时间】:2011-03-08 23:33:33
【问题描述】:

有没有办法使用 .net 创建控制台应用程序。或服务通过某个端口侦听 SMTP 消息?

我需要创建一个中间层对象来捕获和处理 smtp 消息。也就是说,我希望这个监听器发送和接收 smtp 消息,然后分解为它的基本组件并持久化到一个 sql server 数据库。

如果有现成的解决方案就更好了。我在网上乱跑时找不到。

注意:smtp 发送者将是网络上的一个 web 应用程序,以及交换。侦听器将被分配一些端口,因此该端口上的所有 smpt 流量都将被指定用于我的特定应用程序。

【问题讨论】:

  • 所以基本上你想写一个 SMTP 服务器?为什么不让常规 SMTP 服务器简单地将邮件转发到您的应用程序? Postfix 和 sendmail 都非常有能力将整个电子邮件转发到外部程序。
  • @marc:它们是否可以扩展到每秒处理 10、100、1000 条消息?以及我的应用程序将如何解析电子邮件以从正文、附件中提取...?对不起,如果我不清楚。如果可能的话,我正在寻找一个 .net 代码示例。
  • sendmail 多年来一直在处理数以万亿计的电子邮件。它将从 0 扩展到硬件可以支持的任何内容。但是,如果您这样做是为了接收自定义消息,为什么还要为 SMTP 开销而烦恼呢?没有什么说你不能编写自己的协议。
  • @marc: Postfix 和 sendmail 都是基于 unix 的,我需要它在 windows 上运行。
  • IIS 有一个您可以使用的 smtp 模块,但我不知道您是否可以让它通过管道将传入的邮件发送到外部程序。但同样:如果您在自定义端口上运行 SMTP,那么为什么还要使用 SMTP?

标签: .net smtp


【解决方案1】:

我不知道它有多好,但 CodeProject 有一个SMTP server example

您要求的不仅仅是“侦听 SMTP 消息”。 SMTP 是一种双向通信协议。发送电子邮件涉及在客户端和服务器之间传递多个数据包。除非您没有更好的事情可做,否则我不建议您尝试自己编写。

我建议您看一下 IIS 附带的 SMTP 模块。它会将电子邮件发送到文件系统中的目录,您的程序可以监控和处理该目录。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 2013-12-24
    • 2014-12-13
    • 2014-02-21
    • 1970-01-01
    • 1970-01-01
    • 2021-07-02
    相关资源
    最近更新 更多