从1996年
![](/icons/53382de.gif)
Windows CE 1.0 到最新
![](/icons/53382de.gif)
Windows CE.Net, WINCE 已有8年历史
![](/icons/53382dou2.gif)
Windows CE设计简单灵活
![](/icons/53382dou.gif)
可在各种小型嵌入式系统中使用
![](/icons/53382dou.gif)
且其功能强大
![](/icons/53382dou.gif)
在最新
![](/icons/53382yi.gif)
代
![](/icons/53382de.gif)
高性能工业和家用设备中也得到了充分使用
![](/icons/53382dou2.gif)
Microsoft eMbedded Visual Tools是微软公司专为WINCE设备开发
![](/icons/53382de.gif)
![](/icons/53382yi.gif)
套开发环境
![](/icons/53382dou.gif)
功能强大
![](/icons/53382dou.gif)
开发方便快捷
![](/icons/53382dou2.gif)
二者
![](/icons/53382de.gif)
结合为实现嵌入式电子邮件系统提供了绝佳
![](/icons/53382de.gif)
开发环境
本嵌入式电子邮件系统
![](/icons/53382dou.gif)
即是以Windows CE为开发平台
![](/icons/53382dou.gif)
结合Embedded Visual Basic 3.0开发工具设计实现
![](/icons/53382de.gif)
![](/icons/53382dou2.gif)
最后采用Microsoft POCKET PC2002 for Windows SDK工具完成系统
![](/icons/53382de.gif)
测试
1 移动设备邮件系统
![](/icons/53382de.gif)
工作原理
目前网络上
![](/icons/53382de.gif)
电子邮件传送有点如同日常信件中
![](/icons/53382de.gif)
普通信件发送
![](/icons/53382dou.gif)
日常生活中人们首先将邮件交给邮局
![](/icons/53382dou.gif)
邮局再按照信封上
![](/icons/53382de.gif)
地址投递
![](/icons/53382dou.gif)
最后将邮件发到收信
![](/icons/53382de.gif)
人信箱里
![](/icons/53382dou.gif)
收信人只要凭借他
![](/icons/53382de.gif)
信箱钥匙就可以拿到信件
![](/icons/53382dou2.gif)
同样
![](/icons/53382de.gif)
![](/icons/53382yi.gif)
封电子邮件从用户手中发出
![](/icons/53382dou.gif)
首先有
![](/icons/53382yi.gif)
个
![](/icons/53382chengxu.gif)
把这封邮件发送到SMTP服务器(发送邮件
![](/icons/53382de.gif)
服务器)上
![](/icons/53382dou.gif)
再由服务器负责将邮件传递到目
![](/icons/53382de.gif)
信箱
![](/icons/53382dou2.gif)
然后需要
![](/icons/53382yi.gif)
个
![](/icons/53382chengxu.gif)
接受信箱
![](/icons/53382de.gif)
邮件
![](/icons/53382dou.gif)
当然也不是只要随便有
![](/icons/53382yi.gif)
个
![](/icons/53382chengxu.gif)
就可以
![](/icons/53382de.gif)
![](/icons/53382dou.gif)
还需要帐号(如同收信人姓名)与口令(如同信箱钥匙)
![](/icons/53382dou2.gif)
所以很明显
![](/icons/53382dou.gif)
发送邮件至少需要4个处理不同任务
![](/icons/53382dou.gif)
有不同功能
![](/icons/53382de.gif)
![](/icons/53382chengxu.gif)
:发送邮件到服务器
![](/icons/53382de.gif)
![](/icons/53382chengxu.gif)
![](/icons/53382dou.gif)
即发送邮件客户端
![](/icons/53382chengxu.gif)
;在网络上传送邮件到对方信箱
![](/icons/53382de.gif)
![](/icons/53382chengxu.gif)
![](/icons/53382dou.gif)
即SMTP服务器
![](/icons/53382chengxu.gif)
;接受邮件并存贮给用户提取
![](/icons/53382de.gif)
服务器
![](/icons/53382chengxu.gif)
![](/icons/53382dou.gif)
即POP3服务器
![](/icons/53382chengxu.gif)
;从POP3服务器上收取邮件
![](/icons/53382de.gif)
![](/icons/53382chengxu.gif)
![](/icons/53382dou.gif)
即接受邮件客户端
![](/icons/53382chengxu.gif)
收发电子邮件依靠
![](/icons/53382yi.gif)
套标准
![](/icons/53382de.gif)
会话协议
![](/icons/53382dou.gif)
其中最为著名现在最常用
![](/icons/53382de.gif)
有:SMTP协议
![](/icons/53382dou.gif)
该协议规定了与SMTP服务器进行对话
![](/icons/53382de.gif)
![](/icons/53382yi.gif)
系列命令与过程标准;POP3协议
![](/icons/53382dou.gif)
该协议规定了与POP3服务器进行对话
![](/icons/53382de.gif)
![](/icons/53382yi.gif)
系列命令与过程标准
![](/icons/53382dou2.gif)
还有IMAP4协议
![](/icons/53382dou.gif)
类似POP3
![](/icons/53382de.gif)
邮件接收协议
1.1 SMTP协议
SMTP(Simple Mail Transfer Protocol)又叫做简单邮件传输协议
![](/icons/53382dou2.gif)
它主要对如何将电子邮件从发送方地址传送到接收方
![](/icons/53382dou.gif)
也即是对传输
![](/icons/53382de.gif)
规则做了规定
![](/icons/53382dou2.gif)
SMTP协议
![](/icons/53382de.gif)
通信模型并不复杂
![](/icons/53382dou.gif)
主要工作集中在发送SMTP和接收SMTP上:首先针对用户发出
![](/icons/53382de.gif)
邮件请求
![](/icons/53382dou.gif)
由发送SMTP建立
![](/icons/53382yi.gif)
条连接到接收SMTP
![](/icons/53382de.gif)
双工通讯链路
![](/icons/53382dou.gif)
发送SMTP负责向接收SMTP发送SMTP命令
![](/icons/53382dou.gif)
而接收SMTP则负责接收并反馈应答
![](/icons/53382dou2.gif)
可大致用下页
![](/icons/53382de.gif)
SMTP通讯模型示意图来表示:
![](http://www.crazycoder.cn/WebFiles/200812/5127af00-6c95-4b25-aca2-5eb2d6a2497a.jpg)
图 1 SMTP 通讯模型示意图
1.2 POP3协议
POP3(Post Office Protocol Version 3)是整个电子邮件系统
![](/icons/53382de.gif)
基本协议之
![](/icons/53382yi.gif)
![](/icons/53382dou2.gif)
POP3适用于C/S结构
![](/icons/53382de.gif)
脱机模型
![](/icons/53382de.gif)
电子邮件协议
![](/icons/53382chushi.gif)
时
![](/icons/53382dou.gif)
服务器通过侦听TCP端口110开始POP3服务
![](/icons/53382dou.gif)
当客户主机需要使用服务时
![](/icons/53382dou.gif)
它将与服务器主机建立TCP连接
![](/icons/53382dou2.gif)
当连接建立后
![](/icons/53382dou.gif)
POP3发送确认消息
![](/icons/53382dou.gif)
客户和POP3服务器相互(分别)交换命令和响应
![](/icons/53382dou2.gif)
这
![](/icons/53382yi.gif)
过程
![](/icons/53382yi.gif)
直要持续到连接终止
2 系统设计
该邮件系统由两个客户端
![](/icons/53382chengxu.gif)
组成
![](/icons/53382dou.gif)
SMTP MAILER实现邮件和附件
![](/icons/53382de.gif)
发送
![](/icons/53382dou.gif)
POP3 MAIL CHECKER用于登陆邮件服务器接受原始
![](/icons/53382de.gif)
邮件信息
2.1 邮件发送端设计与实现
2.1.1发送端工作流程
下图是邮件发送流程图
![](http://www.crazycoder.cn/WebFiles/200812/7ba8b141-ea56-458e-a253-962fa5b67bcc.jpg)
2.1.2具体实现
发送邮件
![](/icons/53382de.gif)
功能主要由eMbedded Visual Basic下
![](/icons/53382de.gif)
WINSOCK控件实现WINSOCK即Windows Socket,是微软公司对Socket编程接口
![](/icons/53382de.gif)
集成
![](/icons/53382dou2.gif)
WINSOCK使用IP协议
![](/icons/53382dou.gif)
同时支持TCP与UDP协议
![](/icons/53382dou.gif)
在收发邮件这类基本网络数据通信
![](/icons/53382de.gif)
前提下
![](/icons/53382dou.gif)
WINSOCK控件是最好
![](/icons/53382de.gif)
选择
以A—H表示邮件发送
![](/icons/53382de.gif)
各部分设计:
A 在这个邮件
![](/icons/53382chengxu.gif)
中
![](/icons/53382dou.gif)
首先要连接SMTP
![](/icons/53382de.gif)
邮件服务因此在cmdSend_Click
![](/icons/53382kh.gif)
事件中最先实施
![](/icons/53382de.gif)
是Wsock.RemoteHost = ServerIp连接设定
![](/icons/53382de.gif)
服务器主机Wsock.RemotePort = ServerPort 设定默认
![](/icons/53382de.gif)
端口
B 然后开始构造邮件格式
![](/icons/53382dou.gif)
定义
![](/icons/53382zifu.gif)
串m_Date为发送日期
![](/icons/53382dou.gif)
![](/icons/53382zifu.gif)
串mData为邮件头
![](/icons/53382dou2.gif)
语句m_Date = FormatDateTime(Date, [vbShortDate]) & , & FormatDateTime(Date, [vbLongDate]) & & FormatDateTime(Time, [vbLongTime]) & & -0600 定义了邮件
![](/icons/53382de.gif)
发送日期
构造邮件标题 mData = From: & Chr(32) & strSendName & vbCrLf & _
Date: & Chr(32) & m_Date & vbCrLf & _
X-Mailer: Harold Smtp Mailer V1.0 & vbCrLf & _
To: & Chr(32) & strReceiveName & vbCrLf & _
Subject: & Chr(32) & strSubject & vbCrLf