【问题标题】:How to send mail on windows (other than MAPI)如何在 Windows 上发送邮件(MAPI 除外)
【发布时间】:2025-12-11 11:05:01
【问题描述】:

查看 MSDN MAPI 文档页面时,它说 API 现在已弃用。如果是这样的话,这些天发送邮件的建议 API 是什么?

http://msdn.microsoft.com/en-us/library/dd296734.aspx

编辑:感谢所有建议,托管路由不适合我,因为我们使用的是 MFC。

【问题讨论】:

    标签: windows winapi email mapi


    【解决方案1】:

    如果你想在用户默认的MUA中打开消息,SMAPI是你最好的选择。如果您想在没有用户输入的情况下发送消息,那么上面的建议是最好的。

    【讨论】:

      【解决方案2】:

      据我所知,如果您不打算使用 Windows MAPI 或 SimpleMAPI,您将不得不推出自己的 SMTP 客户端。

      【讨论】:

        【解决方案3】:

        .NET 2.0 框架使用 System.Net.Mail 命名空间中的邮件客户端。

        这里有一个专门使用它的网站:http://www.systemnetmail.com/

        【讨论】:

          【解决方案4】:

          在大多数情况下,最好的办法是直接使用 SMTP,在 .Net 2.0+ 中 System.Net.Mail 非常通用。还有大量其他资源。只有当您可以依赖 Oulook/OE/WinMail 进行设置和使用时,MAPI 才真正起作用。你没有指定你对 MAPI 的使用,所以你假设 .Net。以您喜欢的平台/语言搜索 SMTP 客户端是您的最佳选择。

          【讨论】:

          • 如果您有任何支持它的邮件代理,MAPI 就可以工作。这包括 Eudora 以及许多其他邮件。
          • 直接使用 SMTP 客户端到邮件服务器,正如我所说...有大量的 SMTP 客户端可用于发送电子邮件。
          【解决方案5】:

          只需使用 Win32 WS api。 发送电子邮件的 10 行代码

          【讨论】:

            【解决方案6】:

            如果您想使用 SMTP 发送消息,那么您应该查看 Ultimate TCP/IP:

            http://www.codeproject.com/KB/MFC/UltimateTCPIP.aspx

            它使发送消息变得非常容易。

            【讨论】:

              【解决方案7】:

              如果您想使用系统上安装的邮件客户端,MAPI 仍然是您的选择。如果没有,您可能想看看 ChilKat,它是一个 COM 组件。

              【讨论】:

                最近更新 更多