【问题标题】:how to send email using c++ without specifying smtp server如何在不指定 smtp 服务器的情况下使用 C++ 发送电子邮件
【发布时间】:2013-12-08 13:12:31
【问题描述】:

我想使用 c++ 代码通过 SMTP 发送电子邮件,我应该如何以一般方式处理它,随机用户不必处理 SMTP 服务器规范? (视窗)

没有指定意味着用户不必写SMTP服务器的IP地址等。

【问题讨论】:

  • 似乎对电子邮件的工作原理存在一些误解。 SMTP 服务器是处理外发邮件的服务器,它将邮件传递到相应的收件人服务器。除非您想编写自己的 smtp 服务器,否则您必须知道一个可以在某处转发您的邮件。
  • 所以你是说自己写是不指定的最佳选择......?

标签: c++ visual-c++ smtp


【解决方案1】:

您可以使用 Simple MAPI,但您需要一个支持 MAPI 接口的电子邮件程序,例如 Outlook。

【讨论】:

    【解决方案2】:

    贾斯珀的回答是正确的。您需要在运行 C++ 程序的主机上安装 SMTP 服务器。一种选择是qmail。有关详细信息,请参阅 www.lifewithqmail.org,包括有关如何安装它的分步指南。

    大多数 linux SMTP 服务器(包括 qmail)都会创建一个 smylink /usr/sbin/sendmail,您可以使用它来发送外发邮件。一般来说,语法是:

    /usr/sbin/sendmail recipient@domain.tld < /path/to/file/containing/the/message
    

    查看帮助文件了解更多信息,包括可用于指定信封发件人的标志等。

    您可以通过对 /usr/sbin/sendmail 进行类似于上述的系统调用来从 C++ 程序发送消息。

    【讨论】:

      【解决方案3】:

      在代码运行的同一主机上安装 smtp 中继服务器,并将代码中的 SMTP 服务器设置为“localhost”。

      【讨论】:

      • 如果可以,我可以通过编码来管理您所引用的所有内容,请指导一下
      • Zeeshan,到目前为止,您尝试过什么?您使用 C++ 中的哪些命令/库来发送邮件?
      • @nicholasM 直到现在我用谷歌搜索,我发现你可以使用其他人的 smtp 服务器,如 gmail、yahoo 等,或者你必须在安装了 smtp 服务器的其他电脑上指定它,但我的问题我想向我的朋友提供代码吗,他不需要 dll,也没有在 GUI 上指定 SMTP 服务器(他希望我一般处理这个)所以我想要的只是以上两点,所以你能告诉我完全实现吗
      猜你喜欢
      • 2014-01-13
      • 1970-01-01
      • 2013-06-23
      • 2011-06-25
      • 2014-08-11
      • 1970-01-01
      • 2011-03-07
      • 2010-10-12
      相关资源
      最近更新 更多