从Linux中的C/C++程序发送电子邮件
发布时间:2021-01-12 14:47:42 所属栏目:Linux 来源:互联网
导读:每次我的模拟结束,我想发送一封电子邮件到我的Gmail帐户.我已经尝试搜索网络,发现 sendEmail,但它是超时.如果有人可以指出我想要的一个包或链接,我会感激的. 谢谢 您可以使用popen()直接调用您的本地MTA,并提供符合RFC822的文本. #include stdio.h#include st
每次我的模拟结束,我想发送一封电子邮件到我的Gmail帐户.我已经尝试搜索网络,发现 sendEmail,但它是超时.如果有人可以指出我想要的一个包或链接,我会感激的. 谢谢 解决方法您可以使用popen()直接调用您的本地MTA,并提供符合RFC822的文本.#include <stdio.h> #include <string.h> #include <errno.h> int sendmail(const char *to,const char *from,const char *subject,const char *message) { int retval = -1; FILE *mailpipe = popen("/usr/lib/sendmail -t","w"); if (mailpipe != NULL) { fprintf(mailpipe,"To: %sn",to); fprintf(mailpipe,"From: %sn",from); fprintf(mailpipe,"Subject: %snn",subject); fwrite(message,1,strlen(message),mailpipe); fwrite(".n",2,mailpipe); pclose(mailpipe); retval = 0; } else { perror("Failed to invoke sendmail"); } return retval; } main(int argc,char** argv) { int i; printf("argc = %dn",argc); for (i = 0; i < argc; i++) printf("argv[%d] = "%s"n",i,argv[i]); sendmail(argv[1],argv[2],argv[3],argv[4]); } (编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 命令行 – 在root文件拥有该文件后,有效用户ID不会更改
- linux – 如何仅清理buildroot中的目标
- ssh-rsync主机密钥验证失败
- linux – 如何使用Expect自动化telnet会话?
- 是否可以让cmake构建文件(CMakeLists.txt)不在CLion的root中
- linux – 如果我启动后台进程然后注销,它会继续运行吗?
- 如何在linux mint下的zsh中设置virtualenvwrapper?
- linux – Microsoft Project开源替代品
- linux – 如何在unix上找到没有日志文件的死进程的原因?
- linux – 在json中使Apache2服务目录索引