Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如何使用objective C/cocoa以编程方式发送电子邮件_Objective C_Cocoa_Email_Sendmail - Fatal编程技术网

Objective c 如何使用objective C/cocoa以编程方式发送电子邮件

Objective c 如何使用objective C/cocoa以编程方式发送电子邮件,objective-c,cocoa,email,sendmail,Objective C,Cocoa,Email,Sendmail,您好,我是MAC OS开发新手,我想通过应用程序以编程方式发送电子邮件,但不使用类似于苹果网站上的SBSendEmail中的邮件应用程序。我不想附加任何附件,只是一封纯文本电子邮件。做这件事最好最简单的方法是什么?是否可以使用SBSendEmail的基本功能,并通过邮件应用程序自动完成发送邮件的最后一步?难道没有像C#中那样简单的方法来创建邮件对象并发送它吗? 谢谢。纯可可没有办法做到这一点,除非使用三个或四个可用的电子邮件库中的一个(哑剧是我头脑中知道的一个)。所有这些的主要问题是,它们是为实

您好,我是MAC OS开发新手,我想通过应用程序以编程方式发送电子邮件,但不使用类似于苹果网站上的SBSendEmail中的邮件应用程序。我不想附加任何附件,只是一封纯文本电子邮件。做这件事最好最简单的方法是什么?是否可以使用SBSendEmail的基本功能,并通过邮件应用程序自动完成发送邮件的最后一步?难道没有像C#中那样简单的方法来创建邮件对象并发送它吗?
谢谢。

纯可可没有办法做到这一点,除非使用三个或四个可用的电子邮件库中的一个(哑剧是我头脑中知道的一个)。所有这些的主要问题是,它们是为实现完整的电子邮件客户端而设计的,而不仅仅是发送电子邮件,因此它们可能比您需要的更重

对于咆哮的邮件显示,我写道。Xcode项目将其捆绑到MailMe显示插件捆绑包中,MailMe使用NSTask运行该工具,并传递它在用户邮件首选项中找到的SMTP信息。Growl也是开源的,所以你可以阅读

不起作用的事情:

  • 消息框架,它没有64位的公共API
  • 邮件(1)工具,它要求用户运行本地SMTP服务器(simple mailer使用另一个SMTP服务器,您可以在命令行中输入其名称)
请注意,MailMe目前不了解如何查找MobileMe密码,因此它还无法使用MobileMe帐户发送。如果你修改代码来做到这一点,我们将非常感谢一个补丁


另一个补丁机会是MailMe目前只在Mail的首选项中查找邮件发送设置。它可以查看其他客户的偏好,但还不知道如何做到这一点。如果使用Thunderbird的任何人都希望使用此功能,我们将再次感谢您提供补丁。

我建议您使用/usr/lib/sendmail(如果有)。打开一个到/usr/lib/sendmail的管道,并在stdin上发送邮件。这应该在操作系统上可用。

只是一个猜测,但这可能会有所帮助:SMTP是一个非常简单的协议,如果您了解SMTP服务器,那么使用套接字直接与它通信可能会更容易。我曾经做过一次这样的练习,并且惊讶于发送电子邮件是多么简单。你能详细解释一下吗?sendmail将尝试通过本地SMTP服务器发送。在任何Mac OS X客户端计算机上,本地SMTP服务器都没有运行,因此邮件实际上不会被发送。另外,它是/usr/sbin/sendmail/usr/lib用于库。/usr/lib/sendmail是sendmail的实际位置,尽管它可能看起来很不传统。将邮件交给本地MTA比当时尝试SMTP传递要可靠得多。系统管理员应该配置sendmail或ssmtp或类似的东西来完成传递,它不一定是一个完整的邮件程序,只是可以排队的东西。