当前位置: 技术问答>linux和unix
Linux下C语言程序中怎么发送邮件???
来源: 互联网 发布时间:2015-10-31
本文导语: 麻烦解答一下,谢谢 | void send_mail(char *to, char *sub, char *text) { FILE *fp; char command[1024]; fp=fopen("./letter","w"); fputs(text,fp); fclose(fp); sprintf(command,"mail %s -s %...
麻烦解答一下,谢谢
|
void send_mail(char *to, char *sub, char *text)
{
FILE *fp;
char command[1024];
fp=fopen("./letter","w");
fputs(text,fp);
fclose(fp);
sprintf(command,"mail %s -s %s /dev/null 2>&1", MAILER, argv[1]);
fp = popen(buf, "w");
if (fp == NULL){
fprintf(stderr, "could not buiding popen descriptor!n");
exit(EXIT_FAILURE);
}
fprintf(fp, "Subject: TEST UNDER DEBIANn");
fprintf(fp, "From: rootn");
fprintf(fp, "To: tengulre@mail.megamail.com.cnn");
fprintf(fp, "n");
fprintf(fp, "HELLO WORLD!n");
pclose(fp);
exit(0);
}
{
FILE *fp;
char command[1024];
fp=fopen("./letter","w");
fputs(text,fp);
fclose(fp);
sprintf(command,"mail %s -s %s /dev/null 2>&1", MAILER, argv[1]);
fp = popen(buf, "w");
if (fp == NULL){
fprintf(stderr, "could not buiding popen descriptor!n");
exit(EXIT_FAILURE);
}
fprintf(fp, "Subject: TEST UNDER DEBIANn");
fprintf(fp, "From: rootn");
fprintf(fp, "To: tengulre@mail.megamail.com.cnn");
fprintf(fp, "n");
fprintf(fp, "HELLO WORLD!n");
pclose(fp);
exit(0);
}
|
socket programming
去google or baidu一下
去google or baidu一下
|
有两种方法:
1、通过SMTP协议,建立SOCKET发送邮件,这样复杂但灵活
2、利用现成的工具,比如SMTP开发包或者mail程序,就简单很多,不过功能上可能会有限制
1、通过SMTP协议,建立SOCKET发送邮件,这样复杂但灵活
2、利用现成的工具,比如SMTP开发包或者mail程序,就简单很多,不过功能上可能会有限制
|
pop3和smtp协议,不是很难吧,我同学毕业设计都做的这个,感觉就几十行代码。
还是潜入式的。
还是潜入式的。
|
熟悉下smtp协议先,尝试用telnet发送邮件(能够让你感性的认识下smtp的常用指令),用socket把它实现,更多的例如主题包含中文,有附件,就要慢慢体会了