资源简介

/* * 使用规则: * 可以发送带附件的邮件,附件大小限制由发送方服务器而定,暂未测试具体为多少MB * 附件可以是多个 * 邮件内容和主题可以是空,但当有附件时,主题取第一个附件的文件名(不含扩展名) * 密码验证均为base64加密 * 邮件正文和附件的数据传送方式,均为base64 * 自动解析发件箱的SMTP服务器 */ 支持windows系统,linux系统。 上一版本的更新版。 详细情况件压缩包的readme

资源截图

代码片段和文件信息

#include 
#include 
#include “mybase.h“
#include “mymail.h“

#ifdef WINDOWS
#include 
#include 
#endif

#ifdef LINUX
#include 
#endif






char mailfrom[MAILFROM+1];
char mailpass[PASSWDLEN+1];
char mailsubj[MAILSUBJ+1];
char mailtime[MAILTIME+1];
char mailmark[MAXMARKLEN];
char mailaddr[MAILADDR+1];
char mailto[MAXTOLEN+1];
char charset[20+1];
char contype[20+1];
char mailatt[MAX_PATH*MAXATTNUM+1];
char cfgfile[MAX_PATH+1];
char *mailbody=NULL;

/*是否增加时间标志*/
int markflag=0;


/* 从文件读取邮件接收者的信息,以分号为间隔放在mailto中 参数为文件路径 */
int GetMailToFromFile(char *filename)
{
char bufline[150];
FILE *fp;
trim(filename);
fp=fopen(filename“r“);
if(fp==NULL)
{
printf(“MailTo文件打开失败无法读取收件人地址!%s\n“filename);
WriteLog(LOGLVL“MailTo File Open Err! [%s]“filename);
return -1;
}
WriteLog(LOGLVL“MailTo File Open OK! [%s]“filename);
memset(mailto0x00sizeof(mailto));
while(!feof(fp))
{
readstr(buflinefp);
trim(bufline);
WriteLog(LOGLVL“bufline is [%s]“bufline);
if(strlen(bufline)==0)
{
        WriteLog(LOGLVL“NULL Line“);
        continue;
}
else if (bufline[0]==‘#‘)
{
    WriteLog(LOGLVL“The Line Doesn‘t In Plan[%s]“bufline);
        continue;
}
else
{
        if((strlen(mailto)+strlen(bufline)+1)         {
        strcat(mailtobufline);
        strcat(mailto“;“);
    }
    else break;
}
}
fclose(fp);
trim(mailto);
if(strlen(mailto)==0)
{
printf(“MailTo文件中无有效的收件人地址!%s\n“filename);
WriteLog(LOGLVL“There Doesn‘t Have Effectively MailTo In File! [%s]“filename);
return -1;
}
WriteLog(LOGLVL“Get Effectively MailTo From File OK!“);
return 0;
}

/* 从文件读取邮件内容信息,放在mailbody中 参数为文件路径 */
int GetMailBodyFromFile(char *filename)
{
int filelen=0;
FILE *fp;
trim(filename);
fp=fopen(filename“r“);
if(fp==NULL)
{
printf(“MailBody文件打开失败无法读取邮件正文!%s\n“filename);
WriteLog(LOGLVL“MailBody File Open Err! [%s]“filename);
return -1;
}
WriteLog(LOGLVL“MailBody File Open OK! [%s]“filename);
fseek(fp0SEEK_END);
filelen=ftell(fp);
if(filelen==0)
{
WriteLog(LOGLVL“MailBody file [%s] is NULL.“filename);
return 0;
}
fseek(fp0SEEK_SET);
mailbody=NULL;
Malloc(mailbodycharfilelen+1);
fread(mailbody1filelenfp);
fclose(fp);
if(strlen(mailbody)==0)
{
printf(“MailBody文件中无邮件正文!%s\n“filename);
WriteLog(LOGLVL“There Doesn‘t Have Content In MailBody File! [%s]“filename);
return -1;
}
WriteLog(LOGLVL“Get MailBody From File OK!“);
return 0;
}

/* 显示帮助 */
int ShowHelp()
{
printf(“Send email to one or more mail receivers\n\n“);
printf(“MAIL [-F FROM -P PWD]/[-C:ACCOUNT] [-T TO1[;...TOn]]/[-TO TOFILE]/[-T:TOACCOUNT1[;...TOACCOUNTn]]\n“);
printf(“     [-S SUBJECT] [-B BODY/-BODY BODYFILE] [[-A ATTACHFILE1]...[-A ATTACHFILEn]]\n“);
printf(“     [-MARK] [-CODE VALUE] [-TYPE VALUE]\n\n“);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      25000  2013-03-19 12:55  mail\code\mail.c

     文件        525  2013-03-23 09:18  mail\code\makefile

     文件        493  2013-03-23 09:46  mail\etc\mail.cfg

     文件        302  2013-03-23 09:49  mail\etc\moontalk.cfg

     文件       9662  2013-02-04 11:18  mail\icon\mail.ico

     文件       8983  2013-03-23 10:57  mail\include\mybase.h

     文件       3602  2013-03-19 19:36  mail\include\mymail.h

     文件     100611  2013-03-19 21:11  mail\lib\base.c

     文件      28068  2013-03-19 19:35  mail\lib\mail.c

     文件        572  2013-03-23 11:24  mail\lib\makefile

     文件         22  2013-02-04 10:45  mail\rc\mail.rc

     文件        325  2013-03-23 09:36  mail\rc\makefile

     文件       5259  2013-03-23 10:57  mail\ReadMe.txt

     目录          0  2013-03-23 11:24  mail\bin

     目录          0  2013-03-23 11:23  mail\code

     目录          0  2013-03-23 11:22  mail\etc

     目录          0  2013-03-23 11:22  mail\icon

     目录          0  2013-03-23 11:24  mail\include

     目录          0  2013-03-23 11:24  mail\lib

     目录          0  2013-03-23 09:45  mail\log

     目录          0  2013-03-23 11:22  mail\rc

     目录          0  2013-03-23 09:45  mail\res

     目录          0  2013-03-23 09:49  mail

----------- ---------  ---------- -----  ----

               183424                    23


评论

共有 条评论