文档库 最新最全的文档下载
当前位置:文档库 › 电子邮件接收程序的设计与实现

电子邮件接收程序的设计与实现

电子邮件接收程序的设计与实现
电子邮件接收程序的设计与实现

电子邮件接收程序的设计与实现

学生姓名:XX 指导老师:XX

摘要电子邮件可以使人们有效地进行电子化的数据异地交换。Internet以电子邮件服务推动着人类的通信行为不断发展。本文以VC++为开发平台,利用Socket 套接字编程,实现了基于POP3协议的邮件接收程序,介绍了POP3协议的原理及电子邮件接收程序的设计与实现方法。

关键词课程设计;电子邮件;接收程序;POP3;Socket;VC++

1、引言

随着Internet/Intranet的迅猛发展,电子邮件(E-Mail)已成为因特网上非常流行、非常方便的通信方式。电子邮件技术不断进步,邮件协议也不断发展。目前应用最广泛的电子邮件收件协议是POP3。本文采用微软最新的.NET技术,以VC++为开发平台,利用Socket套接字编程开发了基于POP3协议的邮件接收程序,现对相关原理及具体设计进行讨论。

1.1 课程设计的内容

运用VC++语言设计一个邮件程序实现邮件的接收

1.2 课程设计的要求

(1)按要求编写课程设计报告书,能正确阐述设计结果。

(2)通过课程设计培养学生严谨的科学态度,认真的工作作风和团队协作精

神。

(3)学会文献检索的基本方法和综合运用文献的能力。

(4)在老师的指导下,要求每个学生独立完成课程设计的全部内容。

2、设计平台简介

2.1 VC++

(1)背景

VC++是微软公司开发的一个IDE(集成开发环境),换句话说,就是使用C++的一个开发平台。VC++是Windows平台上的C++编程环境,学习VC要了解很多Windows平台的特性并且还要掌握MFC、ATL、COM等的知识,难度比较大。Windows下编程需要了解Windows的消息机制以及回调(callback)函数的原理;MFC是Win32API的包装类,需要理解文档视图类的结构,窗口类的结构,消息流向等等;COM是代码共享的二进制标准,需要掌握其基本原理等等。

VC++作为Visual Studio的一个组件,可以通过安装Visual Studio来获得。VC作为一个主流的开发平台一直深受编程爱好者的喜爱,但是很多人却对它的入门感到难于上青天,究其原因主要是大家对他错误的认识造成的,严格的来说VC++不是门语言,虽然它和C++之间有密切的关系,如果形象点比喻的话,可以把C++看作为一种“工业标准”,而VC++则是某种操作系统平台下的“厂商标准”,而“厂商标准”是在遵循“工业标准”

的前提下扩展而来的。

(2)基本模式

VC++应用程序的开发主要有两种模式,一种是WIN API方式,另一种则是MFC方式。VC基于C,C++语言,主要由是MFC组成,是与系统联系非常紧密的编程工具,它兼有高级,和低级语言的双重性,功能强大,灵活,执行效率高,几乎可说VC在 Windows平台无所不能。最大缺点是开发效率不高。

(3)适用范围【1】

1、 VC主要是针对Windows系统,适合一些系统级的开发,可以方便实现一些底层的调用。在VC里边嵌入汇编语言很简单。

2、 VC主要用在驱动程序开发。

3、 VC执行效率高,当对系统性能要求很高的时候,可用VC开发。

4、 VC主要适用于游戏开发。

5、 VC多用于单片机,工业控制等软件开发,如直接对I/O地址操作,就要用C++。

6、 VC适用开发高效,短小,轻量级的COM组件,DLL。比如WEB上的控件。

7、 VC可以开发优秀的基于通信的程序。

8、 VC可以开发高效灵活的文件操作程序。

9、 VC可以开发灵活高效的数据库操作程序。

10、VC是编CAD软件的唯一选择。包括AUTOCAD,UG的二次开发。

11、 VC在多线程、网络通信、分布应用方面,VC++有不可比拟的优势。

3、邮件接收协议

3.1 POP3简介

POP3(Post Office Protocol Version 3),即邮局办公协议,该协议用于接收邮件的双方(客户机、POP3服务器)进行通信。使用该协议,用户可以脱机阅读信件,而不必把客户机长期连接到网络上,以减少网络费用。POP3协议允许用户以一定的方式从保存邮件的服务器(即POP3服务器)上取走自己的邮件。

3.2 POP3协议工作原理【2】

POP3提供了一种客户机/服务器脱机模型,客户机通过向服务器发送一些命令来完成相应的操作。客户机能够发送的命令与它所处的状态有关。协议中定义了三种状态:即确认状态(Authorization State)、处理状态(Transaction State)和更新状态(Update State)。在不同的状态下,客户机可以向服务器发送的命令是有区别的,某些命令还会导致状态的转换。POP3交互过程中的常用命令和状

态转换如图3.2.1和表3.2.1所示。

图3.2.1 POP3的状态转换示意图

表3.2.1 一些常用的POP3命令

POP3服务器一般使用的是TCP的110号端口。当客户机与服务器建立TCP连接时,POP3服务器向客户机发回一个问候,交互过程即进入确认状态。此时,若客户机提供了自己的身份并成功确认,即由确认状态转入处理状态;在这个状态,用户可用相应的命令处理自己的邮件。在完成相应的处理过程后客户机发出QUIT命令,则进入更新状态;在此状态下,POP3服务器释放邮件资源并返回一个告别响应;最后关闭TCP连接。

通过POP3命令查询电子邮件时,客户机可以下载指定的邮件,然后对邮件进行删除或修改操作都无需与服务器进一步交互。客户机向服务器发送命令并等待响应,POP3命令采用命令行形式,用ASCII码表示。服务器响应是由一行或多行组成,其中,第一行以ASCII文本+OK, 或-ERR开始,分别指出相应的操作是成功还是失败。

POP3命令包含一个大小写无关的关键字和一个或多个参量,所有的命令以

(回车换行符)作为其结束标志。关键字和参量必须是非控制符的ASCII 码字符。关键字和参量之间,参量和参量之间由一个空格字符分隔开。关键字长

不大于四个字符,每个参量最长可到40个字符。

POP3响应包含一个状态标志和一个跟随其后的附加信息。响应也用作为其结束标志。响应最长到512字节,其中包括协议定义了两个状态标志:正确(“ +OK”)和错误(“ -ERR”)。服务器用大写格式发送“ +OK”和“ -ERR”。如果响应是多行的,则每行以结束。当响应的所有行被发送后,接着发送多行响应的结束标志行,该行仅包含一个句点“.”和一个

对【3】。

4、设计原理

4.1 POP3交互模型

该模型基本原理为:POP3接收者对

POP3发送者进行初始化连接,发送者对接收者发送询问指令“READY”,接收者则向发送者提交所要接收数据的要求,发送者做出回应,并发送数据。接收者则开始接收数据。发送者发送完数据后,提出断开请求,并断开连接。数据接收过程完成。

5、课程设计步骤

5.1 函数构造

Windows Socket类是对Windows Socket API的封装,其中包括,CSocket和cAsyncSocket类,使用它们能够大大简化网络通信程序的编写。套接字的数据结构中包括下面五种数据:

(1)本机主机端口:接收报文或数据报的进程。

(2)本机主机地址:接收数据包的主机。

(3)远地协议端口:目的进程或程序。

(4)远地主机端口:目的主机。

(5)协议:程序在网络上传输数据时使用的协议。

本应用程序就是使用Windows sockets编程设计的。

在接收电子邮件时,必然需要涉及到连接服务器,接收数据,接收响应以及断开等一系列操作.这就需要设计一个类来封装这些操作,在该应用程序中制定了一个CSMTP类。该类的定义如下所示,

#define SMTP_PORT 25

#define RESPONSE_BUFFER_SIZE 1024

class CSMTP

{

Public;

CSMTP(LPCTSTR szSMTPServerName,UINT nPort=

SMTP_PORT);

virtual~CSMTP();

void SetServerProperties(LPCTSTR szSMTPserverName,

UINT nPort=SMTP_PORT);

CString GetlastError();

UINT GetPort();

BOOL Disconnect();

BOOL Connect();

virtual BOOL FormatMAilMessage(CMailMessage * msg

);

BOOL getMessage(CMailMessage * msg);

CString GetserverHostName();

Private;

BOOL get_response(UINT response_expected);

CString cook_body(CMailMessage * msg);

CString m_serror;

BOOL m_bconnected;

UINT m_nPort;

CString m_sSMTPServerHostName;

CSocket m_wsSMTPServer;

protected;

virtuaI BOOL transmit_message(CMailMessage * msg

);

struct response_code

{

UINT nResponse;

TCHAR * sMessage;

};

enum eResponse

{

GENERIC_SUCCESS = O,

CONNECT_SUCCESS,

DATA_SUCCESS,

QUIT_SUCCESS,

LAST_RESPONSE

);

TCHAR * response_buf;

static response_code response_table[];);

其中,m_sError成员代表错误信息,m_bConnected表示是否建立连接;m_bPort

表示SMTP服务器所使用的端口号,m_sSMTPserverHostName表示SMTP服务器的主机名(地址);m_waSMTPserver则为将与SMTP服务器建立连接的套接字对

象;response_table表示由服务器返回的响应,而eResponse列举了所有可能出现的错误。

因为电子邮件有其特殊的结构,不单简单地将其作为文本进行处理。例如,邮件必须在邮件头和邮件体后发送,而在收信时,先需要解析邮件头和邮件体.CMailMessage类是对邮件进行格式化编码的一个类【4】。

CSMTP类的构造函数如下所示:

CSMTP: ; CSMTP(LPCTSTR szSMTPServerName,

UINT nPort)

{ASSERT(szSMTPServerName l = NULL);

AfxSocketInit();

m_sSMTPserverHostName = azSMTPServerName;

m_nPort = nPort;

m_bConnected = FALSE;

m_sError = _T(“OK”);

response_buf = NULL;}

在这里调用AfxsocketInit函数以初始化Window Sockets类的使用,此外还验证其他类成员是否合法,或为其赋值。

5.2 接收邮件的步骤

(1). 建立与服务器的连接。具体工作由Connect函数完成。部分Connect函数代码如下所示:

BOOL CSMTP:; Connect()

{……

if(! m_wsSMTPServer.Create())

{m_sError=_T(“无法创建套接字!”);

delete response_buf;

response_buf = NULL;

return FALSE;)

if(! M_wsSMTPserver.Connect(GetServerHostName

(),GetPort()))

{m_sError = _T(“无法连接到服务器”);

M_sSMTPserver.Close();

delete response_but;

response-buf = NULL;

return FALSEI;}

if(! Get_response(CONNECT_SUCCESS))

{m_sError = _T(“服务器投有响应”);

M_wsSMTPServer.Close();

delete response_buf;

response_buf = NULL;

return FALSE;)

sHello.Format(_T(“HELO%s\r\n”),local_host);

m_wsSMTPServer.Get((LPCTSTR)sHello,sHello.

Getlength());

……}

(2).建立连接后从服务器接收邮件。这个工作由GetMessage函数完成。GetMessage函数代码如下:

BOOL CSMTP::GetMessage(CMailMessage * msg)

{if(! m_bConnected)

{m_sError = _T(“必须首先创建连接!”);

return FALSE;)

if(FormatMailMessage(msg)==FALSE)

{return FALSE;)

if(transmit_message(msg)==FALSE)

{return FALSE;)

return TRUE;)

前面介绍过电子邮件有其特殊的格式,在这里FormatMailMessage函数就是用于格式化邮件信息的。Transmit_message函数将邮件进到服务器上。部分Transmit_message函数代码如下所示:

BOOL CSMTP::transmit_message(CMailMessage *

msg)

{……sFrom.Format_T(“MAIL From:<%s>\r\n”

),(LPCTSTR)msg一>m_sFrom);

M_wsSMTPServer.Get((LPCTSTR)sFrom,sFrom.

GctLength());

if(! Get_response(GENERIC_SUCCESS))

return FALSEl;

for(int i=O;iGetNumRecipients(); i++)

{msg一>GetRecipient(sEmail,sTemp,i);

sTo.Format(_T(“RCPT TO;<%s>\r\n”),(LPCT

STR)sEmail);

m_wsSMTPServer.Get( (LPCTSTR)sTemp,sTemp.

GetLength());

Get_response(GENERIC_SUCCESS);)

sTemp=_T(“DATA\r\n”);

m_wsSMTPServer.Get((LPCTSTR)sTemp,sTemp.

GetLength());

if(! Get_response(DATA_SUCCESS))

{return FALSE;}

m_wsSMTPserver.Get((LPCTSTR)msg一>m_

sHeader,g一>m_sHeader.GetLength());

sTemp = cook_body(msg);

m_wsSMTPServer.Get((LPCTSTR)sTemp,sTemp.

GetLength());

sTemp = _T(“\r\n.\r\n”);

m_wsSMTPServer.Get((LPCTSTR)sTemp,sTemp.

GetLength());

if{! Get_response(GENERIC_SUCCESS))

{return FALSE;}

Return TRUE;}

在此函数中,首先发送MAIL命令,通知服务器收信人的邮箱地址。然后发进RCPT 命令,通知服务器发信人的邮箱地址。需要注意的是,在有多个发信人时,必须为每个发信人都发送一次RCPT命令,通知服务器将要进行邮件数据的传输。此后,分别将邮件头和邮件体从服务器上接收下来。这里需要注意一点:当邮件数据接收完毕后,需要额外发送一个“回车/换行……回车/换行”信号,以通知邮件数据传输完毕.

(3). 当邮件接收完毕后,一般不需要保持与SMTP服务器的连接,而断开的工作由Disconnect函数完成。Disconnect代码如下:

BOOL CSMTP: : Disconnect()

{BOOL ret;

if(! m_bConnected)

return TRUE;

CString sQuit = _T(“QUIT\r\n”);

m_wsSMTPserver.send((LPCTSTR)sQuit,sQuit.

GetLength());

Ret = get_response(QUIT_SUCCESS);

m_wsSMTPServer.Close();

if(response_buf ! = NULL)

{delete[]response_buf;

Response_buf = NULL;}

M_bConnected = FALSE;

return ret;}

首先向SMTP服务器发送QUIT命令,关闭邮件传输会话;然后调用套接字对象的Close函数关闭套接字,最后将类对象所占用的内存释放。

6、测试

6.1 测试目的

检测邮件接收程序是否能接收邮件。

6.2 测试环境

Windows XP

6.3 测试结果

与服务器取得联系之后,对目标邮件进行接收,证明邮件可以正常接收,具体的接收界面如下图6.3.1所示:

图6.3.1接收电子邮件程序主界面

6.4 结果分析

邮件接收成功,本程序实现邮件接收功能。

7、出现的问题及解决方法

7.1设计中出现的问题

(1)设计初没有接触尝试过对相似系统的设计;

(2)设计时编写程式不是很顺利;

(3)调试程序是出现很多错误;

(4)软件界面过于简洁。

7.2解决方法

(1)找来相关资料,经过一番研究,对该系统有了较清晰的认识,才开始着手于正式设计。

(2)经过一段时间的研究,找到了可行的函数模式。

(3)不断地耐心调试,直至出现满意的结果。

(4)经过相应的修改,终于达到了较好的效果。

参考文献

[1] Al Stevens,Clayton Walnum 著,林丽闺,别红霞等译.标准C++宝典,2001. 北京:电子工业出版社.

[2]朱岩,高伟编著.标准Windows程序设计-Visual C++与MFC及Win32 API 的应用,1997.北京:人民邮电出版社.

[3]李博轩等著.Visual C++6.0 网络及 Internet开发指南[M],2000.北京:清华大学出版社.

[4]邓亚平著.计算机网络[M],1999.北京:北京邮电出版社.

电子邮件试题及答案

《信息技术基础》(电子邮件部分) 强化练习 1.如果E-mail地址是wang@https://www.wendangku.net/doc/436597860.html,,那么用该邮箱地址发送邮件范围:()A.只能是云南 B.只能是中国 C.只能是教育部门 D.可以是全世界 2.某同学以myname为用户名在新浪网(https://www.wendangku.net/doc/436597860.html,)注册的电箱地址应该是:() A myname@https://www.wendangku.net/doc/436597860.html, B.https://www.wendangku.net/doc/436597860.html, C.myname.sina@com D.https://www.wendangku.net/doc/436597860.html,@myname 3.使用WEB方式(直接在网站上)收发电子邮件时,以下描述错误的是:() A.不用设置SMTP服务域名 B.不用设置POP3服务域名 C.不用输入账号和密码登录 D.可以在附件中插入图片文件 4.在撰写邮件时,在收件人对话框的“收件人”栏中:() A.只能输入一个人的收件地址 B.只能输人多个人的收件地址 C.既可以输入一个人的收件地址又可以输人多个人的收件地址 D.只能输入收件人的姓名 5.要将一封电子邮件同时发送给几个人,可以在收件人栏中输入他们的地址,并用()分隔。 (A)”(B)。(C),(D) / 6.关于发送电子邮件,下列说法中正确的是()。 (A)你必须先接入Internet,别人才可以给你发送电子邮件 (B)你只有打开了自己的计算机,别人才可以给你发送电子邮件 (C)只要有E-Mail地址,别人就可以给你发送电子邮件 (D)别人只要接入了Internet,就可以给你发送电子邮件 7.要给某人发电子邮件,必须知道他的()。 (A)电话号码(B)家庭地址(C)姓名(D)E-Mail地址 8.在发送电子邮件时,在邮件中()。 (A)只能插入一个图形附件(B)只能插入一个声音附件 (C)只能插入一个文本附件(D)可以根据需要插入多个附件 9.电子邮件从本质上来说就是()。 (A)浏览(B)电报(C)传真(D)文件 10.小明写了一份研究性学习结题报告电子文档,投稿前就稿子审阅修订问题需要与身在国外留学的叔叔进行较长时间的交流。你认为小明应该采用的较合理的信息交流方式是:() (A)电报 (B)电话 (C)书信 (D)电子邮件 11.下列主要用于电子邮件收发和管理的软件是() (A)FrontPage (B)Outlook Express (C)ACDSee (D)WinRAR 12.接收电子邮件的协议是() (A)SMTP (B)HTTP (C)POP3 (D)TCP/IP 13.在电子邮件中所包含的信息() (A)只能是文字信息 (B)只能是文字和图形图像信息 (C)只能是文字与声音信息 (D)可以是文字、声音和图形图像信息 14.把电子邮件发送到收件人的电子信箱中,所采用的邮件传输协议是()

电子邮件的收发

电子邮件的收发 【教材分析】 本节内容是高等教育出版社出版的中等职业教育国家规划教材——《计算机应用基础》第四章第二节,即时通讯软件和邮件收发都是现代人所需掌握的基本技能,特别是QQ的普及,很多人都越来越多地依赖它来交流信息,沟通感情。教材中没有对QQ过多介绍,反而指向MSN,需要向学生说明。同时,教材中除了介绍在web上收发邮件外,还介绍用邮件客户端软件管理邮件,深化了对邮箱管理的操作。 【教材处理】 本节的实际操作性还是比较强的,但是由于学生对邮箱和qq都已很熟悉,如果设计不好,很难吸引学生的注意力,进而把课堂深化下去。同时,本节的理论知识也是很重要的一部分,有些比较抽象,不好理解。因此对教材作如下处理: 1、情景引入尤为重要,创设学生身边的情境,让学生带着问题去思考,在情境中不知不觉地领悟新知。 2、旧瓶装新酒,适当扩充软件知识和深化知识点。 3、让学生学会比较,在比较中建构自己的知识体系和技能。 【学情分析】 教学对象:职高一年级学生 基本情况:学生已经在初中阶段学过信息技术这一课程再加上qq的普及,对本节内容已有初步的认识。 电子邮件对于学生来说,并不是第一次使用。部分学生可能都曾用过电子邮箱发送过电子邮件。但从平时的交流中,发现他们只会登录web页面发信、收信,对电子邮箱中的相关设置和发送原理并不是很了解。而对于用邮件客户端软件,如Outlook Express之类软件,基本上从来没有尝试过。因此,如何利用邮件客户端软件收发电子邮件,是本节的主要内容之一。 网络注册已经相当普遍,如何保障个人信息的安全,也是眼前要解决的一个问题。在电子邮件的收发过程中,除了对电子邮箱中的选项进行相关设置外,设定一定等级的密码是其中的一个方法。学生平时常常会忽略这点,设定的密码比较简单。所以在本课中也有相关的网络安全意识教育。

发送电子邮件的程序实例

发送电子邮件的程序 一、程序界面设计 smtp电子邮件发送程序的用户界面 填入smtp服务器地址、邮箱用户名和口令,端口号是25,并填入发信人,发信地址填入你在该网站的免费邮箱地址。在对话框的右面填入发送电子邮件的相关信息,选择一个附件,然后点击“发送”按钮,程序会与服务器建立TCP连接,然后按照ESMTP协议发送ELHO命令,然后发送用户名和口令,经过验证,进入SMTP会话。通过命令交互,将邮件和附件发送出去,然后断开连接。在此过程中,右下方的多文本列表框(RichTextBox)会显示全部的会话信息。 现在的SMTP服务器与以前不一样,一般都要经过验证身份后,才为你提供传输邮件的服务,验证的方法有很多种,这里只实现了一种,仅仅为了说明问题。 程序实现的技术要点是: 1.运用Windows的消息驱动机制 2.通过状态转换来控制会话命令的发布顺序 3.实现了base64编码和译码。 二、创建应用程序的过程 1.使用MFC AppWizard创建应用程序框架 工程名是Smtp,应用程序的类型是基于对话框的,对话框的标题是“电子邮件发送客

户端程序”,需要Windows Sockets的支持,其它部分接受系统的默认设置就可以。向导自动为应用程序创建了两个类: 应用程序类:CSmtpApp,基类是CWinApp,对应的文件是Smtp.h和Smtp.cpp。 对话框类:CSmtpDlg,基类是CDialog,对应的文件是SmtpDlg.h和SmtpDlg.cpp。 2.为对话框添加控件 在程序的主对话框界面中添加相应的控件对象,并按照下表修改控件的属性。 对话框中的控件属性 控件类型控件ID Caption 静态文本static text IDC_STATIC 发信人 静态文本static text IDC_STATIC 发信地址 静态文本static text IDC_STATIC SMTP服务器 静态文本static text IDC_STATIC 端口 静态文本static text IDC_STATIC 用户名 静态文本static text IDC_STATIC 口令 编辑框edit box IDC_EDIT_SENDER 编辑框edit box IDC_EDIT_ADDRESS 编辑框edit box IDC_EDIT_SERVNAME 编辑框edit box IDC_EDIT_SERVPORT 编辑框edit box IDC_EDIT_USERNAME 编辑框edit box IDC_EDIT_PASSWORD 静态文本static text IDC_STATIC 收信 静态文本static text IDC_STATIC 主题 静态文本static text IDC_STATIC 抄送 静态文本static text IDC_STATIC 暗送 静态文本static text IDC_STATIC 附件 静态文本static text IDC_STATIC 信件内容 编辑框edit box IDC_EDIT_RECEIVER 编辑框edit box IDC_EDIT_TITLE 编辑框edit box IDC_EDIT_CC 编辑框edit box IDC_EDIT_BCC 编辑框edit box IDC_EDIT_ATTACH 编辑框edit box IDC_EDIT_LETTER 命令按钮button IDC_BUTTON_VIEW 浏览 静态文本static text IDC_STATIC smtp 会话的状态信息 多文本框RichEdit Box IDC_RICH_LIST 命令按钮button IDOK 发送 命令按钮button IDCANCEL 取消 3.定义控件的成员变量 为对话框中的控件对象定义相应的成员变量。

苏科版信息技术下册第10课《收发电子邮件》教案

第10课收发电子邮件 [教学目的与要求] 1.学会进入自己的电子邮箱。 2.学会发电子邮件。 3.学会回复电子邮件。 4.通过发电子邮件的实践活动,让学生学会自主学习,能够协同合作、探索新知。 5.让学生养成遵守网络道德规范的良好习惯。 6.培养学生学习、使用因特网的兴趣和意识。 [课时安排] 建议安排1课时。 [教学重点与难点] 1.重点:登录电子邮箱的操作方法,如何编写、发送电子邮件。 2.难点:如何充分调动学生参与的积极性,使学生遵守网络道德规范的良好习惯。[教材分析与教法建议] 1.教材的地位与作用 E-mail是因特网上重要的信息服务方式,它为世界各地的因特网用户提供了一种快速、便捷、经济的通信方式,由于这些优点, 因特网上数以亿计的用户都有自己的E-mail地址,E-mail也成为利用率最高的因特网应用。 本课是在前一课学习申请电子邮箱的基础上,让学生对电子邮箱和电子邮件有进一步的认识。 2.教学方法指导 培养学生良好的网络道德习惯和信息技术素养。从低层次探索入手,充分调动学生积极自主地探究新知识。让学生自主探索,主动构建知识。以学生为主体,凸现分层教学。让学生展示自己的新发现,体验成功的喜悦。同时也让学生学会与他人合作学习,营造一个相互学习,相互得益的氛围,调动每个学生的积极性。 (1)课前,教师可以布置学生注册两个以上电子邮箱账号,或批量注册一批账号以供备用,并及时地把自己的新邮箱地址通知同班好友,这样在课堂上可以有更多实践的机会。 (2)在备课时,教师可设计一些适合小学生心理特点的电子邮件内容,增加练习或模拟发电子邮件的趣味性,使学生尽快掌握收发电子邮件的技能。 (3)有条件的学校,可在本校的局域网上,利用Windows NT 的Microsoft 邮局系统,建立起局域网内部电子邮件系统,给每位学生设置账号账号和密码,然后设置好学生机上收

电子邮件管理制度

电子邮件管理制度 第一章总则 第一条目的 规范公司内部邮件系统的使用,充分发挥电子邮件系统的作用。为公司办公及业务系统的安全可靠运行提供必要的保障。 第二条适用范围 适用于日常使用公司邮件系统进行邮件接收和发送的部门和人员。 第三条人员职责 1、人力资源部 1.1负责邮件系统安装与设置、系统技术支持、系统运行监视。 1.2负责维护邮件系统、保证服务器及邮件系统的正常运行、并及时处理并解决用户的问题。遇到重大问题时,要负责向技术主管报告。 1.3负责邮件帐号的开通、注销以及邮件系统日常管理等 2、邮箱使用人员 3.1遵守公司的邮件使用规定。 3.2及时向系统部报告邮件使用出现的问题。 第二章系统管理 第四条内容 1、邮件服务器的安装、维护由人力资源部负责 1.1人力资源部指定专人为邮件系统管理员(可兼任),为了保证邮件系统的安全性 和稳定性,邮件系统管理员不得随意更换。邮件系统管理员不能将自已的工作委托他人。

1.2禁止在邮件服务器上安装与邮件系统无关的软件。 1.3对违反操作规定,影响办公应用或给邮件系统造成严重问题的管理员,人力资源 部经理给予警告、减免当月奖金等处罚。 1.4邮件进出邮件服务器需经过邮件过滤和病毒扫描。 1.5邮件系统应允许用户可自行更改密码。 1.6邮件服务器应纳入防火墙的管理,防火墙策略应只打开邮件服务必需的端口。 1.7定期对邮件服务器进行安全扫描,保证邮件服务器及时更新。 1.8保证现行的各项保护措施发挥作用,保证邮件服务器所采用的安全补丁的有效性。 1.9应建立邮件服务器的日志文件记录机制,记录所有成功的和未成功的入侵行为以 及所有可疑行为。 2、应定期对邮件系统进行备份。 3、邮件服务器的帐户管理及日常管理由人事部负责 3.1人力资源部负责邮件帐号的管理,在员工入职时开通邮件帐号;员工离职时应及 时注销离职员工的邮件帐号信息。 4、员工使用电子邮件 4.1邮件用户必须严格遵守国家有关保密法规法令,不得泄露国家及公司机密,不得侵犯公司及其他员工的合法权益,不得从事违法犯罪活动。 4.2邮箱需设置密码;邮箱的密码必须保证6位或以上,并且足够复杂(如字母和数字混用,有大小写区别等);邮箱的密码使用期限为6个月,过期后用户需要更改密码。 4.3邮箱密码必须严格保密,不得泄露。 4.4普通员工发送和接收邮件的大小限制为 10 M。 4.5定期清理个人的邮箱,防止邮箱爆满,影响正常通邮。员工的邮件应在本地PC 机上保存。 4.6严禁以电子邮件工具破坏、干扰他人正常工作或无目的地乱发邮件;禁止传递游戏、MP3等与办公无关的邮件。 4.7 凡是通过电子邮件在网上发送的文件,发件人应主动使用查病毒软件检查并确认安全后方可发出,从而尽可能避免病毒通过网络扩散。 4.8不得故意制作、传播计算机病毒等破坏性程序及其他危害电子邮件安全的活动。 4.9严禁利用电子邮件制作、复制和传播如下信息: 1)捏造或歪曲事实、散布谣言;

实验六 电子邮件收发及客户端软件

实验六电子邮件收发及客户端软件配置 【实验目的】 让学生了解电子邮件传输信息的方法,熟练使用基于Web的电子邮件的收发,并掌握电子邮件客户端软件的配置方法及其基本应用。 【实验内容】 1.Web电子邮件的收发。 2.配置电子邮件客户端软件(Microsoft Outlook Express和Foxmail)。 3.电子邮件客户端软件的基本应用。 【预备知识】 (一)电子邮件基础知识 电子邮件(Electronic Mail)又称E-mail,它是用户或用户组之间通过计算机网络收发信息的服务。用户可以使用电子邮件发送或接收文字、图像和语音等多种形式的信息。目前电子邮件已成为网络用户之间快速、简便、可靠且成本低廉的现代通信手段,也是Internet 上使用最广泛、最受欢迎的服务之一。 1.电子邮箱 电子邮箱由提供电子邮件服务的机构为用户建立,在邮件服务器上建一个用户帐号并为用户开辟一个存储空间,又称E-mail地址。E-mail地址格式为:用户名@邮件服务器主机名。例如:zhujun@https://www.wendangku.net/doc/436597860.html,。 2.电子邮件工作原理 电子邮件与普通邮件有类似的地方,发信者注明收件人的E-mail地址,发送方服务器把邮件传到收件方服务器,收件方服务器再把邮件发到收件人的邮箱中。如图6-1所示。 图6-1 电子邮件收发示意图 在电子邮件的实际工作过程中,收发邮件一般是双向的,即发件人和收件人、发件服务器和收件服务器的角色是相互转换的。 电子邮件系统由以下几部分组成(见图6-2): z MUA(Mail User Agent):邮件用户代理,帮助用户读写邮件。 z MTA(Mail Transport Agent):邮件传输代理,负责把邮件由一个服务器传到另一个服务器。 1

我怎样使用电子邮件客户端(Outlook)程序收发邮件

我怎样使用电子邮件客户端程序(如Outlook)来发送和阅读邮件? 你可以使用支持POP 的客户端或者设备(例如Outlook 或Foxmail)收发你的邮件。 请配置你的电子邮件客户端,以下载企业邮箱邮件。要了解如何进行配置,请单击你的电子邮件客户端名称: Outlook 设置 请手动配置你的客户端: 1. 首先,启动Outlook Express。打开“Internet 连接向导”;首先输入你的“显示名”,如:殷大微。此姓名将出现在你所发送邮件的“发件人”一栏。,然后单击“下一步”按钮; 2. 在“Internet 电子邮件地址”窗口中输入你的邮箱地址,如:username@16 https://www.wendangku.net/doc/436597860.html,,再单击“下一步”按钮;

3. 在“接收邮件(pop、IMAP或HTTP)服务器:”字段中输入https://www.wendangku.net/doc/436597860.html,。在“发送邮件服务器(SMTP):”字段中输入https://www.wendangku.net/doc/436597860.html,,然后单击“下一步”; 4.在“帐户名:”字段中输入你的163免费邮用户名(仅输入@ 前面的部分)。在“密码:”字段中输入你的邮箱密码,然后单击“下一步”。

5.点击“完成”。 6.在Internet 帐户中,选择“邮件”选项卡,选中刚才设置的帐号,单击“属性”。

7.在属性设置窗口中,选择“服务器”选项卡,勾选“我的服务器需要身份验证”。 8.点击“确定”。 其它设置补充说明:

如果你希望在服务器上保留邮件副本,则在帐户属性中,单击“高级”选项卡。勾选“在服务器上保留邮件副本”。此时下边设置细则的勾选项由禁止(灰色)变为可选(黑色)。 恭喜!你已经完成Outlook 客户端配置,可以收发邮件了。

《收发电子邮件》教学设计#(精选.)

《收发电子邮件》教学设计 一、教材分析 本课主要练习内容分为四部分:认识电子邮箱、申请电子邮箱、发送电子邮件和接收电子邮件。认识电子邮箱是本课学习的基础,申请电子邮箱为收发电子邮件做准备,发送和接受电子邮件是为了让学生在条件具备的情况下,利用自己建立的免费电子邮箱收发电子邮件。其中,学会注册电子邮箱既是本课的重点又是难点,掌握发送电子邮件的具体方法也是重点需着重练习。我们用两个任务练习,从而帮助学生熟练掌握电子邮件的几种常用操作技能方法。本课就内容而言,对已经学习了一段信息技术知识的六年级学生来说并不难,而且也是学生非常感兴趣的东西,教师应充分利用学生在实践中的成就感,让学生展示自己的学习成果,进一步激发学生的学习热情,在接收邮件部分让学生自己探究学习,激发和调动学生学习的积极性 二、学情分析. 中学生好奇心强,接受新事物快,有一定的探究发现能力。学生在学习本课之前,已经掌握了计算机操作以及网络的一些基本知识与技能,对利用电子邮件方式进行通信有一定的兴趣,有利于在课堂教学中实施以学生为主体的教学方式,由于因特网的迅速发展,少数学生家庭已经具备上网的条件,学会上网浏览和玩游戏,但是大多数学生仍然没有使用过电子邮件,不明确电子邮件在实际生活中的作用,缺乏应用的基础知识。本课的学习主要让学生把电子邮件应用到实际生活中,培养学生遵守使用电子邮件的道德规范。 三、教学目标 ●知识与技能 1.了解并掌握电子邮件的格式; 2.学会注册电子邮箱; 3.掌握收发电子邮件的具体操作方法。 ●过程与方法 通过自主学习的方式,完成接收电子邮件的学习内容,提高学生阅读能力和操作能力。 ●情感态度与价值观 提高利用信息技术为生活和学习服务的意识;感悟信息技术的优越性;拓展与他人和社会的交往方式。 四、教学重点和难点 重点:1.学会注册电子邮箱; 2.掌握收发电子邮件的具体操作方法。 难点:学会注册电子邮箱。 五、教学准备 多媒体课件;计算机网络教室。 教学设计思路 本课通过“问题导入”和“知识学习”两大部分进行教学。通过问题导入的方式吸引学生的注意力,激发学生对问题的思考。知识学习的部分中再划分四小部分内容:认识电子邮箱、申请电子邮箱、发送电子邮件和接收电子邮件。认识电子邮箱部分主要是传统教师传授知识的方式:教师讲,

电子邮件收发系统的设计与实现【开题报告】

开题报告 通信工程 电子邮件收发系统的设计与实现 一、课题研究意义及现状 伴随中国互联网的发展和政府、企业信息化的进程,电子邮件系统越来越占据着举足轻重的地位。电子邮件系统在国内的应用,经历了从科研机构的专用工作方式到步入寻常百姓的日常生活,到为政府和诸多企业认可,成为人们工作、生活“标准配置”的发展历程。电子邮件系统作为整套应用解决方案,必然涉及到Internet接入网络、电子邮件系统应用软件、数据库、服务器设备、存储备份、集群、安全加密等相关技术,其中电子邮件系统软件是整个系统的核心,其技术指标对整个系统的功能和性能起到决定性作用。 随着我国Internet网络基础设施的不断改善和互联网应用的日益普及,以及人们对电子邮件服务的功能、性能要求的日益提升,电子邮件的应用也必将越来越深入和专业化。在技术上,电子邮件系统在国内的发展经历了从传统电子邮件系统的CtoC(Copy to China),到电子邮件服务提供商组织技术力量开发完善自己的邮件系统,再到顺应市场需求,逐渐产生满足不同目标用户电子邮件需求的商业化电子邮件系统成熟产品的不断发展过程。早期,国外一些可免费下载使用的电子邮件系统(如Sendmail、Qmail等)曾被国内用户广泛采用。这些系统可满足一定用户数的基本邮件收发需求,但随着用户数规模的扩大和本地化、专业化电子邮件功能、性能需求的日益提升,这些免费“舶来品”的缺陷日益突出:系统性能随着用户数的增多急剧下降;可靠性低,收发邮件不稳定甚至丢失邮件;安全性差,易被黑客攻击,商业机密易泄露;中文处理经常出现问题,代码之间难转换等。这些传统电子邮件系统的缺陷促使了国内自主开发、自主品牌的电子邮件系统的诞生。 二、课题研究的主要内容和预期目标 主要内容: 本课题研究的是一个电子邮件收发系统,以C++Builder 6.0为开发环境。 预期目标: 设计一款简单的电子邮件系统,具备一般电子邮件的基本功能。能进行邮件的收发, 发送附件,邮件杀毒,垃圾邮件过滤,来邮件手机短信提醒等功能。 三、课题研究的方法及措施 关于C++ builder C++ builder是Inprise公司(原Borland公司)1998年推出的,面向对象的32位Windows程序设计开发工具。C++ builder不仅继承了Delphi使用简便、功能强大、效率高等特点,而且它还结合看

高中信息技术 第四章 第五节 接收和发送电子邮件教案 浙教版

课题:接收和发送电子邮件 教学时间:授课班级: 教学目标: 1、了解电子邮件的接收和发送 2、学习outlook Express的使用 3、掌握接收和发送电子邮件的方法 教学重点: 制作电子邮件;接收和发送电子邮件;附加文件的邮件 教学难点:完整的收件人地址;电子邮件是否发出 教学过程: 一、课程导入: 在上一节课,我们已经成功地申请了免费的电子邮箱,看到了许多漂亮的网站,下载了部分软件和文章。我们怎样把这些信息告诉给同学、朋友和亲人?(打电话、写信、电报、传真、传呼、发电子邮件。)在这当中,那一种方式既快捷又经济呢?电子邮件。好!怎样接收和发送电子邮件呢?这是我们今天要学习的内容。板书:接收和发送电子邮件。要发电子邮件,我们必须接通互联网。因此,在学校里,老师接通互联网。在家里,我们自己拨号上网。当这一条件具备了时,才能收发电子邮件。接收和发送电子邮件,既可用网站的免费邮件系统,也可用专用软件outlook等. 二、新课教授: 一)、基本知识 1、启动outlook Express. 2、认识outlook Express界面. 1)、文件夹窗口. 2)、邮件主题列表窗口. 3)、邮件预览窗口. 二)、发送电子邮件 1、制作电子邮件 1)、单击"新邮件"按钮. 2)、认识新邮件窗口. ①收件人的格式是:用户名@邮件服务器域名例如:teacher@https://www.wendangku.net/doc/436597860.html, jzl@https://www.wendangku.net/doc/436597860.html,.如果同一邮件要发送给多个人,可用逗号或分号把邮箱地址隔开. ②"抄送"和"密件抄送"的格式和第一条一样. ③在"主题"里,可以自己命名.例如:信件、通知、hello等 ④在"正文"中,书写我们表达的内容. 3)、附加文件. 方法:插入→附件→选文件名→打开或单击"附加"按钮 备注:附加其它软件编辑的作品,如文本、图片、软件等。 收件人方面必须要有该软件. 4)、保存电子邮件.

vc编写电子邮件程序文件

VC++编写电子程序 .diybl. 时间:2008-08-27 作者:佚名编辑:本站点击:635 [评论] VC++编写电子程序 一、概述 ---- 本文主要讲述如何使用Visual C++用MAPI编写E-mail程序。MAPI是包含在Windows之中的, 因此不需要安装其他额外的部件。MAPI有以下三种形式: SMAPI,Simple MAPI,简单的MAPI CMC,Common Messaging Calls,一般通讯调用 完整的MAPI ---- SMAPI和CMC都包含在完整的MAPI中,当用户想执行一些高级操作,比如编写自己的E-mail服务器的时候, 必须使用完整的MAPI。本文主要阐述如何编写能够收发电子的程序,因此使用SMAPI就足够了。 二、编写电子程序 3-1 初始化MAPI ---- 要使用MAPI,必须首先对它进行初始化。初始化包括以下三个步骤: 装载MAPI32.DLL动态库 找到想要调用的MAPI函数地址 登录到电子对象 3-1-1 装载MAPI32.DLL ---- 要装载MAPI,用户必须程序运行时动态的装载一个动态库。LoadLibrary函数提供了此功能, 它定位一个动态库,并返回HINSTANCE局柄(需要保存该句柄)。 LoadLibrary的语法如下: LoadLibrary ( lpLibFileName ); 其中lpLibFileName为LPCTSTR结构变量, 是所要调用的库的路径和名称。 程序示例: // 调用MAPI32.DLL并计算函数地址 HINSTANCE hInstMail; hInstMail = ::LoadLibrary ( “MAPI32.DLL” ); if ( hInstMail == NULL ) { // 错误处理 // 受篇幅限制,下面的错误处理部分省略 } 3-1-2 确定函数地址 ---- 由于MAPI32.DLL是被动态装载的,因此不知道所要调用的函数地址,也就不能一开始就调用它们,

神奇的电子邮件教案及教学反思

《来自网络的信件》教学设计 教学目标: 1、了解什么时电子邮件; 2、知道怎样申请电子邮箱; 3、学会收发电子邮件。 教学重点、难点: 学会申请免费电子邮件、收发电子邮件 教学准备: 多媒体课件 教学过程: 一、课件导入: 出示多媒体课件,让学生观看了解远古时代人们传递信息的方式,并与现代社会人们交流、传递信息的方式进行比较,让学生说说二者不同之处,并谈谈自己的感受。导入课题:神奇的电子邮件。 师:同学们,从古至今,信件是人类交流信息的最常用的手段。随着社会的发展,传递信件的方式也在不断变化着。从早期的邮递马车,到现在的轮船、汽车、火车、飞机,信件往来越来越方便,越来越快。但是自从有了因特网,信件的传递方式就发生了质的变化,我们可以在计算机上写信寄信,通过因特网,一封信只要几秒钟就可以传递到天涯海角。当你们面对这样一个神奇的电子邮件时,你们想知道一些什么呢? 生1:什么是电子邮件?电子邮件地址的格式是怎样的?

生2:怎样申请属于自己的免费电子信箱呢? 生3:如何发送和接收电子邮件呢?发送和接收电子邮件有哪些注意事项呢? 师:好,今天我们就带着这些问题来学习“神奇的电子邮件”(板书课题),并让这些问题的解决的过程变成我们今天学习的乐趣。 二、新课讲授: 1) 了解什么是电子邮件? 电子邮件,顾名思义,就是通过电子媒介来传递邮件。其实,电子邮件又叫E--mail,和我们平常收发信件的原理是类似的。现在我们每台计算机都有电子邮件帐号,(我们每位同学也可以到Internet网上去申请一个免费的电子邮箱。)这个帐号相当于邮局的一个信箱,收发电子邮件都要通过自己的邮箱,而密码就是自己邮箱的钥匙,给别人发信,就要知道对方的邮件地址,而收到信的人,自然会看到你的地址,于是就可以建立通信联系。 2) E--mail地址典型的格式: 师:E--mail地址典型的格式由三部分组成,前面一部分表示用户名,后面一部分表示邮件服务器的域名,中间用“@”隔开。 (板书)电子邮件格式:用户名+@+邮件服务器的域名 3) 申请免费电子信箱(演示过程) 三、课堂练习 1.申请免费电子信箱(自主学习) 明确要求:打开浏览器,自己独立或两人协作完成一个免费电子信箱的申请注册任务,遇到困难时,请同学之间、小组之间协商解决,也可以进行电

公司电子邮件使用管理规定

电子邮件使用管理规定 第一条总则 公司开通网络电子邮件服务,目的是为了更好地促进公司员工工作的内外交流。公司的电子信息网络,无论是对内,还是对外,均不允许传递与本人工作无关的内容,违者视情节轻重给以批评、降薪、降职、辞退处分。 第二条邮件服务器管理 信息工程部统一管理公司的电子邮件服务器并负责电子邮件的开户、使用、维护和监督检查。 第三条邮件开户须知 申请电子邮件开户首先必须填写“电子邮件开户申请表”并在保密承诺书一栏中签字,然后交部门经理审核签字后,将申请表交到信息工程部邮件管理员处开户。邮件管理员开户完成后填写“电子邮件开户回执”并通知申请人。回执单上包含配置邮件客户终端软件所需信息和用户使用规则。 第四条电子邮件使用规定 1.用户应定期检查自己的邮箱并取走邮件,以保证用户的邮箱只占用合理的磁盘空间。每个用户的邮箱不能大于10M,对于超过10M的邮箱,管理员可以删除邮箱中两个月以前的旧邮件,以保证用户邮箱在10M以下。由于不遵守此项规定而可能造成的损失由用户自己负责。 2.禁止向异地发送大于2M的电子邮件,严禁使用FTP下载软件和使用电子邮件订阅新闻、杂志、论坛等。技术杂志由公司统一订阅,资料室集中管理。申请订阅者需填写“电子杂志订阅申请表”,并提交图书室订阅。公司驻外机构等可由系统主管审批后另行处理。 3.在公司内部使用电子邮件只能使用在公司开户的电子邮件地址,不能擅自使用其他任何邮件地址。 4.严禁转发有危害社会安全言论和政治性评论文章的邮件及一些无聊邮件。 5.发送保密资料邮件,按资料级别不同分别对待: (1)秘密级:需由部门主管同意,加密发送,由部门对资料的安全性负责。 (2)机密级:由部门主管签字同意,将发送资料交知识产权室审核、存档,由知识产权室负责发送。 (3)绝密级:禁止在网上发送。 第五条监督检查工作 公司员工使用公司电子邮件要接受行政部和信息工程部的监管,系统会自动将部分用户收发电子邮件的副本保存,以便监督检查和备案。公司行政部有权对收发的电子邮件的内容进行检查。 第六条违规处罚 1.对于异地发送超过2M的大邮件,使用FIP下载软件,或未经批准用邮件订阅报刊、新闻、论坛的员工,视情节严重程度,处以X X X——X X X元的罚款。 2.转发有危害社会安全的言论或政治性评论文章的邮件以及其他与工作无关的邮件的员工,首次发现作降薪处理,再次发现作降职处理,三次发现作辞退处理。 3.在公司内部使用非公司电子邮件地址,罚款X X X元。 4.任何人使用电子邮件泄露公司商业秘密,一经发现,视情节轻重,处以降薪直至辞退的处理。造成恶劣影响或严重损失的,公司还将依法追究其法律责任。 第七条附则 本规定的解释权属信息工程部和行政部,如有疑问项,可向以上两部门提出咨询。

电子邮件协议综述

常见的电子邮件协议有以下几种:SMTP(简单邮件传输协议)、POP3(邮局协议)、IMAP (Internet邮件访问协议)。这几种协议都是由TCP/IP协议族定义的。SMTP(Simple Mail Transfer Protocol):SMTP主要负责底层的邮件系统如何将邮件从一台机器传至另外一台机器。POP(Post Office Protocol):目前的版本为POP3,POP3是把邮件从电子邮箱中传输到本地计算机的协议。IMAP(Internet Message Access Protocol):目前的版本为IMAP4,是POP3的一种替代协议,提供了邮件检索和邮件处理的新功能,这样用户可以完全不必下载邮件正文就可以看到邮件的标电子邮件 题摘要,从邮件客户端软件就可以对服务器上的邮件和文件夹目录等进行操作。IMAP协议增强了电子邮件的灵活性,同时也减少了垃圾邮件对本地系统的直接危害,同时相对节省了用户察看电子邮件的时间。除此之外,IMAP协议可以记忆用户在脱机状态下对邮件的操作(例如移动邮件,删除邮件等)在下一次打开网络连接的时候会自动执行。 除了我们常见的通用协议SMTP、POP3、IMAP ,现在有一些邮件系统厂商自主研发了私有协议,比如去年Coremail就研发了了私有协议,这个私有协议达到了邮件加速的目的,邮件发送接收比使用普通协议快了一倍,不过既然是私有协议,目前只能使用在同一个系统中,比如网易邮箱和139手机邮箱都用了Coremail邮件系统,他们之间互相收发邮件比收发其它系统的邮件要快一半。 这种私有协议一般是实力雄厚、终端用户多的厂商才具有研发的意义。 什么是POP 大家一听这个POP,读起来有点像是中文中的泡泡,其实这是一个英文术语的缩写。POP 的全称是Post Office Protocol,即邮局协议,用于电子邮件的接收,它使用TCP的110端口。现在常用的是第三版,所以简称为POP3。POP3仍采用Client/Server工作模式,Client被称为客户端,一般我们日常使用电脑都是作为客户端,而Server(服务器)则是网管人员进行管理的。举个形象的例子,Server(服务器)是许多小信箱的集合,就像我们所居住楼房的信箱结构,而客户端就好比是一个人拿着钥匙去信箱开锁取信一样的道理。 POP在网络模型中的层次 大家都知道网络是分层的,而这个分层就好比是一个企业里的组织结构一样。在日常使用电脑过程中,人操作着电脑,人就好比是指挥电脑对因特网操作的首席执行官。当我们打开Foxmail这个邮件软件收取邮件时,Foxmail这个软件就会调用TCP/IP参考模型中的应用层协议—POP协议。 应用层协议建立在网络层协议之上,是专门为用户提供应用服务的,一般是可见的。如利用FTP(文件传输协议)传输一个文件请求一个和目标计算机的连接,在传输文件的过程中,用户和远程计算机交换的一部分是能看到的。而这时POP协议则会指挥下层的协议为它传送数据服务器,最后Foxmail通过一系列协议对话后成功将电子邮件保存到了Foxmail 的收件箱里。TCP/IP参考模型是Internet的基础。和OSI的7层协议比较,TCP/IP参考模型中没有会话层和表示层。通常说的TCP/IP是一组协议的总称,TCP/IP实际上是一个协议族(或协议包),包括100多个相互关联的协议,其中IP(Internet Protocol,网际协议)是网络层最主要的协议;TCP(Transmission Control Protocol,传输控制协议)和UDP(User Datagram Protocol,用户数据报协议)是传输层中最主要的协议。一般认为IP、TCP、UDP是最根本的三种协议,是其它协议的基础。 相信读者了解TCP/IP框架之后,一定会对各层产生一定的兴趣,不过我们对于这个模型的理解也是一步步来的。在这里,我们首先只要知道相应的软件会调用应用层的相应协议,比如Foxmail会调用POP协议,而IE浏览器则会调用DNS协议先将网址解析成IP地址。在

电子邮件程序

第八章电子邮件程序 第八章电子邮件程序 在本章中,我们将系统的讨论关于电子邮件的,电子邮件是目前Internet上最重要的应用之一,它和我们在上一章介绍的几种网络应用一样,依赖于应用层的协议,但它分为两个部分,发送一部分,接收一部分,使用不同的协议进行工作,我们将分别介绍这两种协议,并着重于实际的编程应用。 本章重点: z了解关于电子邮件的基本知识 z熟悉WINSOCK处理电子邮件的方法; z熟悉MAPI处理电子邮件的方法 z了解其它较为深入的网络编程问题 8.1 电子邮件与电子邮件协议 8.1.1 电子邮件概述 随着网络技术的发展和网络的广泛使用,电子邮件已经逐渐的进入许多人的生活,它的简单方便使它成为所有网络服务中最重要的一部分,尤其是随着网络上各种免费电子信箱的提供和众多电子刊物的发行,使得收发电子邮件已经成为许多人上网的主要目的。 互联网最初用于方便科学家与政府技术人员间的通信。虽然电子邮件并不是他们采用的第一种通信方式,但它是通信的终极目标。自从互联之日起,它就孕育了电子邮件传输机制。目前,电子邮件完成大部分数据传输工作。统计表明,所有TCP连接中大约一半是用于简单邮件传送协议SMTP。 早期的电子邮件系统仅是将消息拷贝到用户邮箱的程序。那时,用户均使用同一台机器。多用户系统的某个用户使用电子邮件向同一台机器的其他用户发消息。经过一段时期,网关组件的出现允许用户使用一个电子邮件服务器向其他电子邮件服务器发送或者接收邮件。网关允许不同类型的电子邮件系统相互通信。进一步的发展最终促使了电子邮件标准的制定。 电子邮件标准主要有以下两个:X .400,由国际远程通信—通信标准化组织及国际标准化组织制定。简单邮件传输协议(SMTP),由IETF根据早期的研究及开发成果制定。目前最流行的协议就是SMTP。 本节,我们着重介绍的是电子邮件的发送流程,即电子邮件是如何发出的,这是我们学习协议和进行编程的基础。 发送邮件的过程可以参考图8-1,由图中可以看出,用T C P 进行的邮件交换是由报文传送代理完成的,用户甚至不需要和代理打交道。用户仅仅和用户代理相接触。我们考虑的重点是在两个报文传送代理之间邮件是如何传递的。

基于SMTP协议电子邮件收发系统的设计

目录 1 引言 (1) 1.1 电子邮件介绍 (1) 1.2 开发背景 (2) 1.3 开发环境及运行环境 (2) 2 软件架构及系统用例图 (3) 2.1 系统架构 (3) 2.2 系统总体用例 (3) 2.4 发送邮件类 (4) 2.5 附加小功能类 (4) 3 SMTP协议的研究 (4) 3.1 SMTP协议简介及工作原理 (5) 3.2 SMTP协议的命令和应答 (6) 3.2.1 SMTP协议的命令 (6) 4 RFC822 (14) 4.1 RFC822简单介绍 (14) 4.2 信件的头部 (14) 5 命名控件MailSend (20) 5.1 发送邮件类SmtpMail (20) 5.2 AddExtra类 (27) 5.2.1 调用Windows API 所需的命名空间 (28) 5.2.3 在程序中具体的使用 (28) 6 软件运行时的界面 (29) 6.1 新建邮件帐号 (29) 7 系统测试 (32) 7.1 同一SMTP服务器发送邮件的测试 (32) 7.2 利用不同的SMTP服务器发送邮件的测试 (32) 8 结论 (34) 第I 页共II 页

参考文献 (35) 第II 页共II 页

1 引言 1.1 电子邮件介绍 电子邮件(简称E-mai1)又称电子信箱、电子邮政,它是—种用电子手段提供信息交换的通信方式。它是全球多种网络上使用最普遍的一项服务。这种非交互式的通信,加速了信息的交流及数据传送,它是—个简易、快速的方法。通过连接全世界的Internet,实现各类信号的传送、接收、存贮等处理,将邮件送到世界的各个角落。到目前为止,可以说电子邮件是Internet资源使用最多的一种服务,E-mai1不只局限于信件的传递,还可用来传递文件、声音及图形、图像等不同类型的信息。 电子邮件不是一种“终端到终端”的服务,是被称为“存贮转发式”服务。这正是电子信箱系统的核心,利用存贮转发可进行非实时通信,属异步通信方式。即信件发送者可随时随地发送邮件,不要求接收者同时在场,即使对方现在不在,仍可将邮件立刻送到对方的信箱内,且存储在对方的电子邮箱中。接收者可在他认为方便的时候读取信件,不受时空限制。在这里,“发送”邮件意味着将邮件放到收件人的信箱中,而“接收”邮件则意味着从自己的信箱中读取信件,信箱实际上是由文件管理系统支持的—个实体。因为电子邮件是通过邮件服务器(mai1 server)来传递档的。通常mail server是执行多任务操作系统UNIX的计算机,它提供24小时的电子邮件服务,用户只要向mail server管理人员申请—个信箱账号,就可使用这项快速的邮件服务。 电子邮件的工作原理: 1) 电子邮件系统是一种新型的信息系统,是通信技术和计算机技术结合的产物。 电子邮件的传输是通过电子邮件简单传输协议(Simple Mail Transfer Protocol,简称SMTP)这一系统软件来完成的,它是Internet下的一种电子邮件通信协议。 2) 电子邮件的基本原理,是在通信网上设立“电子信箱系统”,它实际上是一个计算机系统。系统的硬件是一个高性能、大容量的计算机。硬盘作为信箱的存储介质,在硬盘上为用户分一定的存储空间作为用户的“信箱”,每位用户都有属于自己的—个电子信箱。并确定—个用户名和用户可以自己随意修改的口令。存储空间包含存放所收信件、编辑信件以及信件存盘三部分空间,用户使用口令开启自己的信箱,并进行发信、读信、编辑、转发、存档等各种操作。系统功能主要由软件实现。 3) 电子邮件的通信是在信箱之间进行的。用户首先开启自己的信箱,然后通过键 第 1 页共36 页

用VB收发电子邮件

用VB收发电子邮件 发送和接收电子邮件,对于某些执行特殊任务的应用程序而言,是一个十分有用的功能。例如,一个监视网络服务器资源使用情况的工具软件,当它发现服务器的资源使用已 经接近事先设定的临界状态时,便可以向系统管理员发送一封告警的电子邮件,从而使系 统管理员能够及时地采取措施,以避免重大事故的出现。在VB中,应用程序可以通过调用MAPI,实现收发电子邮件的功能。 编制具有收发电子邮件功能的VB程序,必须使用VB4.0以上的版本,因为只有4.0以上 的Visual Basic才带有两个实现电子邮件收发功能的核心控件:MAPI会话控件和MAPI消息控件。MAPI会话控件用于建立和控制一个Microsoft Mail会话,MAPI消息控件用于创建和收发邮件消息。此外,程序必须运行在采用遵从MAPI的消息系统(如:Microsoft Exchang e、Microsoft Mail、Outlook等)的环境中。 在开始编程之前,首先需要将MAPI控件加入VB工具箱。具体操作是:在VB菜单栏中选 择Tools菜单项中的Custom Controls命令,调出"Custom Controls"对话框,在其中的"Av ailable Controls"列表框中选中"Microsoft MAPI Controls"表项,然后按"OK"命令按钮 退出该对话框。此后,工具箱中将新添两个如图1所示的图标,这就是MAPI会话控件和MAP I消息控件的图标。 @@1337300.JPG;图1 MAPI工具图标@@ 下面,笔者将以两个简单的VB程序为例,分别介绍发送邮件和接收邮件的程序编制方 法。 一、邮件发送程序 邮件发送程序的基本处理过程是:根据用户输入信息组成邮件,然后使用MAPI消息控 件的Send方法将邮件发出。编程步骤如下: 1. 新建一个VB项目。 2. 将缺省窗体Form1的Caption属性设置为"发送邮件"。 3. 将MAPI控件加入VB工具框。 4. 在Form1中加入一个MAPI会话控件MAPISession1和一个MAPI消息控件MAPIMessag es1。 5. 在Form1中加入三个文本框控件,将它们的Name属性分别设置为txtSendTo、txtS ubject、txtMessage,并将txtMessage的Multiline属性设置为True。这三个文本框控件将分别用于填写邮件的收件人、主题和内容。 6. 在Form1中加入三个标签控件,将它们的Caption属性分别设置为"收件人"、"主题"和"内容",并将它们放在合适的位置用以标注相应的文本框控件。 7. 在Form1中加入一个命令按钮控件,将其Caption属性和Name属性分别设置为"发送"和"cmdSend"。 8. 将下列代码加入Form1的Form_Load事件: Private Sub Form_Load() MAPISession1.SignOn End Sub 9. 将下列代码加入Form1的Form_Unload事件: Private Sub Form_Unload(Cancel As Integer) MAPISession1.SignOff End Sub

相关文档
相关文档 最新文档