从Linux中的C/C++程序发送电子邮件
发布时间:2021-01-12 02:30:53 所属栏目: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]); } (编辑:4S站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- linux – 如何在远程服务器上使用gpg签名密钥?
- LINUX实战:“no space left on device”(磁盘空间不足)问
- 在linux上安装rabbitmqadmin
- linux – 关于fork和execve系统调用
- linux – CentOS错误 – sudo:有效的uid不是0,sudo是否安装
- Linux下的IPv6流量透明代理
- linux – Unix vs BSD vs TCP vs Internet套接字?
- 在Linux上的Java / C应用程序的共享内存IPC的良好替代
- Find command usage in Linux with excellent examples--re
- macos – 使用通配符在.zshrc中获取多个文件