是否有任何windows可以使用smtp 和附件发送邮件。我听说这是不可能的,我必须使用其他的套接字方法,如果是真的,我怎么能做到呢?
请只建议使用c++或c++解决方案,不要使用c#或java(如system.net.mail等)。
发布于 2010-08-29 15:58:02
这是一个没有库的地方(至少在我的经验中)。Microsoft提供(至少) MAPI、简单MAPI和CDO作为发送电子邮件的方式。不幸的是,至少在我的经验中,所有这些(特别是MAPI)都比单独完成工作要复杂得多。
至少,只要您处理的是不安全的电子邮件连接,那么在没有库的情况下完成工作非常简单:在端口25上连接到服务器。发送一些字符串和电子邮件。当你讲到它的时候,“简单”就是“简单邮件传输协议”是完全有理由的--它真的很简单。
但是,如果您想要进行安全连接,您几乎肯定希望为此使用一个库--创建一个安全连接无疑是一项非常重要的任务。既然您使用的是Windows,那么最明显的选择是InternetOpen和InternetConnect。与文档相反,InternetConnect将允许您在几乎任何端口上创建连接。它只列出了大约六种可能性,但是如果您只是通过一个实际的端口号,比如465或587,应该可以工作--尽管有几个端口WinInet块作为一种(可能无效的)安全措施。
处理附件是一个(大部分)单独的问题。附件只是以电子邮件正文中的文本形式结束,有足够的标题来告诉接收者电子邮件程序将其解释为附件而不是文本。有三种比较流行的可能性: BinHex、UUencode和MIME。如果您只想做简单的附件,那么UUencode可能是最好的选择。MIME更有能力,但要复杂得多。使用它的主要原因将是如果你想做的事情,而不是简单的附件(例如,电子邮件嵌入的文件,而不是附加)。BinHex的实现稍微简单一些,但却浪费了更多的空间--使用它的主要原因是一些无法处理其他任何内容的古老电子邮件客户端。
发布于 2010-08-29 14:04:23
这里有一个指向wxWidget smtp类的链接。如果你看一看,你应该知道如何发送电子邮件消息。
https://stackoverflow.com/questions/3595022
复制相似问题