電子郵件客戶端軟件設(shè)計畢業(yè)設(shè)計_第1頁
已閱讀1頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p>  電 子 郵 件 客 戶 端 軟 件 設(shè) 計</p><p>  學(xué) 院:信息工程學(xué)院</p><p>  專 業(yè):電子信息工程</p><p>  姓 名:XXX</p><p>  學(xué) 號:XX</p><p><b>  指導(dǎo)教師: XXX</b

2、></p><p>  完成時間:2012年6月18日</p><p><b>  二〇一二年六月</b></p><p><b>  摘 要</b></p><p>  隨著計算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,電子郵件被大量使用,由于Web電子郵箱需要瀏覽器支持,不能存貯本地附件等缺點,開發(fā)本地郵件收發(fā)系

3、統(tǒng)成為一種趨勢。 論文首先從電子郵件的傳輸、郵件服務(wù)器、郵件的存儲轉(zhuǎn)發(fā)分析了電子郵件系統(tǒng),然后詳細(xì)研究了SMTP/POP3協(xié)議的工作原理和會話過程,在此基礎(chǔ)上,最終實現(xiàn)了一個基于SMTP/POP3的郵件收發(fā)系統(tǒng)。郵件的發(fā)送和文件的上傳采用了SMTP協(xié)議;郵件的接收和文件的下載則采用了POP3協(xié)議。另外,郵件的收發(fā)和文件的上下載都使用了MIME編解碼技術(shù)。整個系統(tǒng)是在Delphi7開發(fā)環(huán)境下主要利用IdSMTP、IdPOP3和Id

4、Message等組件實現(xiàn)的。</p><p>  系統(tǒng)具有響應(yīng)快、容易管理、可擴(kuò)展、低成本等特點,經(jīng)測試表明,系統(tǒng)各部分能夠正常工作,滿足郵件收發(fā)、文件上下載的需要。</p><p>  關(guān)鍵詞:電子郵箱,收發(fā)郵件,SMTP/POP3,Delphi7</p><p><b>  ABSTRACT</b></p><p>

5、  With the development of computer network technology and the widely uses of e-mails, to exploit a local system of sending/receiving e-mails has become a trend because of the disadvantages of Web e-mail box which is slow

6、 to respond.</p><p>  This thesis firstly analyses the e-mail system from the perspectives of transmitting e-mails, e-mail server, e-mail storage and forwarding. After that, studies the working principles an

7、d conversational process of SMTP/POP3 protocol in detailed, on the basis of which, finally realizes the network storage system. the SMTP protocol to send e-mails and upload documents; and the POP3 protocol to receive e-m

8、ails and download documents. In addition, it uses the codes and decodes of MIME both to send/re</p><p>  KEY WORDS: mail box, e-mail, smtp/pop3, delphi7</p><p><b>  目 錄</b></p&g

9、t;<p>  第一章 緒論...........................................................1 1.1 設(shè)計的目的和意義................................................1 1.2 電子郵件簡介....................................................1 1.

10、3 開發(fā)環(huán)境及運行環(huán)境..............................................3</p><p>  1.3.1 開發(fā)環(huán)境....................................................3</p><p>  1.3.2 運行環(huán)境...........................................

11、........3第二章 相關(guān)理論基礎(chǔ)................................................4 2.1 網(wǎng)絡(luò)通信........................................................4 2.2 Delphi簡介 .....................................................4</p>

12、<p>  2.3 DELPHI的控件安裝方法 ...........................................6</p><p>  2.4 數(shù)據(jù)庫系統(tǒng)簡介..................................................7第三章 系統(tǒng)分析及傳輸協(xié)議...........................................8&

13、lt;/p><p>  3.1 系統(tǒng)分析........................................................8</p><p>  3.1.1 系統(tǒng)功能需求分析............................................83.1.2 軟件的總體架構(gòu).....................................

14、.........9</p><p>  3.1.3 程序功能總框圖..............................................9</p><p>  3.1.4 數(shù)據(jù)流程設(shè)計..............................................10</p><p>  3.2 傳輸協(xié)議.............

15、...........................................103.2.1 SMTP協(xié)議...................................................10</p><p>  3.2.2 POP3協(xié)議...................................................12</p><p>

16、  3.2.3 MIME協(xié)議..................................................13第四章 系統(tǒng)設(shè)計....................................................15 4.1 系統(tǒng)模塊劃分....................................................15 4.2 子模塊功能定義......

17、............................................15 4.3 系統(tǒng)設(shè)計方案....................................................15</p><p>  第五章 系統(tǒng)實現(xiàn)及測試...............................................185.1 系統(tǒng)實現(xiàn).............

18、...........................................18</p><p>  5.2 系統(tǒng)測試........................................................18</p><p>  5.2.1 測試環(huán)境...................................................18

19、</p><p>  5.2.2 主程序界面.................................................19</p><p>  5.2.3 發(fā)送界面..................................................19</p><p>  5.2.4 接收界面.................

20、..................................21</p><p>  5.2.5 關(guān)于.......................................................23</p><p>  5.2.6測試總結(jié)....................................................23</p>

21、<p>  結(jié)束語..............................................................24</p><p>  致謝............................................................25</p><p>  參考文獻(xiàn)..........................

22、...................................26</p><p>  附錄A..............................................................27</p><p>  附錄B..............................................................33<

23、;/p><p>  附錄C..............................................................34</p><p><b>  第一章 緒論</b></p><p>  1.1 設(shè)計的目的和意義</p><p>  電子郵件(Electronic Mail、E-mai

24、1)又稱電子信箱,它是—種用電子手段提供信息交換的通信方式,是應(yīng)用于網(wǎng)絡(luò)上的使用最廣泛的網(wǎng)絡(luò)功能之一。E-mail不只局限于信件的傳遞,還可用來傳遞文件、聲音及圖形、圖像等不同類型的信息。電子郵件是“存貯轉(zhuǎn)發(fā)式”的服務(wù),屬于異步通信方式。電子郵件的發(fā)送幾乎是即時的并且可以一次發(fā)送給多個人,發(fā)送和接收主要通過SMTP協(xié)議和POP3協(xié)議來實現(xiàn)。電子郵件系統(tǒng)是一種新型的信息系統(tǒng),是通信技術(shù)和計算機(jī)技術(shù)結(jié)合的產(chǎn)物。它采用“存儲轉(zhuǎn)發(fā)”的機(jī)制來完成

25、電子郵件的收發(fā)。郵件服務(wù)器處理發(fā)送和接收消息的事項,并在處理電子郵件的過程中與其他機(jī)器進(jìn)行通信。</p><p>  客戶端電子郵件軟件一般都比Web Mail服務(wù)器提供更為全面的功能。使用客戶端軟件收發(fā)郵件,登錄時不用下載網(wǎng)站頁面內(nèi)容,速度更快;使用客戶端軟件收到的和曾經(jīng)發(fā)送過的郵件都保存在自己的電腦中,不用上網(wǎng)就可以對舊郵件進(jìn)行閱讀和管理。同時實現(xiàn)多用戶,多郵箱帳戶,多POP3支持,對郵件管理更加快捷方便。正

26、是由于電子郵件客戶端軟件的種種優(yōu)點,它將越來越會成為了人們工作和生活上進(jìn)行交流必不可少的工具。</p><p>  1.2 電子郵件簡介</p><p>  電子郵件(簡稱E-mai1)又稱電子信箱、電子郵政,它是—種用電子手段提供信息交換的通信方式。它是全球多種網(wǎng)絡(luò)上使用最普遍的一項服務(wù)。這種非交互式的通信,加速了信息的交流及數(shù)據(jù)傳送,它是—個簡易、快速的方法。通過連接全世界的Inter

27、net,實現(xiàn)各類信號的傳送、接收、存貯等處理,將郵件送到世界的各個角落。到目前為止,可以說電子郵件是Internet資源使用最多的一種服務(wù),E-mai1不只局限于信件的傳遞,還可用來傳遞文件、聲音及圖形、圖像等不同類型的信息。</p><p>  電子郵件不是一種“終端到終端”的服務(wù),是被稱為“存貯轉(zhuǎn)發(fā)式”服務(wù)。這正是電子信箱系統(tǒng)的核心,利用存貯轉(zhuǎn)發(fā)可進(jìn)行非實時通信,屬異步通信方式。即信件發(fā)送者可隨時隨地發(fā)送郵件

28、,不要求接收者同時在場,即使對方現(xiàn)在不在,仍可將郵件立刻送到對方的信箱內(nèi),且存儲在對方的電子郵箱中。接收者可在他認(rèn)為方便的時候讀取信件,不受時空限制。在這里,“發(fā)送”郵件意味著將郵件放到收件人的信箱中,而“接收”郵件則意味著從自己的信箱中讀取信件,信箱實際上是由文件管理系統(tǒng)支持的—個實體。因為電子郵件是通過郵件服務(wù)器(mai1 server)來傳遞檔的。通常mail server是執(zhí)行多任務(wù)操作系統(tǒng)UNIX的計算機(jī),它提供24小時的電子

29、郵件服務(wù),用戶只要向 mail server管理人員申請—個信箱賬號,就可使用這項快速的郵件服務(wù)。</p><p>  電子郵件的工作原理:</p><p>  1) 電子郵件系統(tǒng)是一種新型的信息系統(tǒng),是通信技術(shù)和計算機(jī)技術(shù)結(jié)合的產(chǎn)物。 </p><p>  電子郵件的傳輸是通過電子郵件簡單傳輸協(xié)議(Simple Mail Transfer Protocol,簡稱S

30、MTP)這一系統(tǒng)軟件來完成的,它是Internet下的一種電子郵件通信協(xié)議。 </p><p>  2) 電子郵件的基本原理,是在通信網(wǎng)上設(shè)立“電子信箱系統(tǒng)”,它實際上是一個計算機(jī)系統(tǒng)。系統(tǒng)的硬件是一個高性能、大容量的計算機(jī)。硬盤作為信箱的存儲介質(zhì),在硬盤上為用戶分一定的存儲空間作為用戶的“信箱”,每位用戶都有屬于自己的—個電子信箱。并確定—個用戶名和用戶可以自己隨意修改的口令。存儲空間包含存放所收信件、編輯信件

31、以及信件存盤三部分空間,用戶使用口令開啟自己的信箱,并進(jìn)行發(fā)信、讀信、編輯、轉(zhuǎn)發(fā)、存檔等各種操作。系統(tǒng)功能主要由軟件實現(xiàn)。</p><p>  3) 電子郵件的通信是在信箱之間進(jìn)行的。用戶首先開啟自己的信箱,然后通過鍵入命令的方式將需要發(fā)送的郵件發(fā)到對方的信箱中。郵件在信箱之間進(jìn)行傳遞和交換,也可以與另—個郵件系統(tǒng)進(jìn)行傳遞和交換。收方在取信時,使用特定賬號從信箱提取。</p><p>  

32、電子郵件的工作過程:</p><p>  電子郵件的工作過程遵循客戶-服務(wù)器模式。每份電子郵件的發(fā)送都要涉及到發(fā)送方與接收方,發(fā)送方式構(gòu)成客戶端,而接收方構(gòu)成服務(wù)器,服務(wù)器含有眾多用戶的電子信箱。發(fā)送方通過郵件客戶程序,將編輯好的電子郵件向郵局服務(wù)器(SMTP服務(wù)器)發(fā)送。郵局服務(wù)器識別接收者的地址,并向管理該地址的郵件服務(wù)器(POP3服務(wù)器)發(fā)送消息。郵件服務(wù)器識將消息存放在接收者的電子信箱內(nèi),并告知接收者有新

33、郵件到來。接收者通過郵件客戶程序連接到服務(wù)器后,就會看到服務(wù)器的通知,進(jìn)而打開自己的電子信箱來查收郵件。 </p><p>  通常Internet上的個人用戶不能直接接收電子郵件,而是通過申請ISP主機(jī)的一個電子信箱,由ISP主機(jī)負(fù)責(zé)電子郵件的接收。一旦有用戶的電子郵件到來,ISP主機(jī)就將郵件移到用戶的電子信箱內(nèi),并通知用戶有新郵件。因此,當(dāng)發(fā)送一條電子郵件給一另一個客戶時,電子郵件首先從用戶計算機(jī)發(fā)

34、送到ISP主機(jī),再到Internet,再到收件人的ISP主機(jī),最后到收件人的個人計算機(jī)。 </p><p>  ISP主機(jī)起著“郵局”的作用,管理著眾多用戶的電子信箱。每個用戶的電子信箱實際上就是用戶所申請的帳號名。每個用戶的電子郵件信箱都要占用ISP主機(jī)一定容量的硬盤空間,由于這一空間是有限的,因此用戶要定期查收和閱讀電子信箱中的郵件,以便騰出空間來接收新的郵件。</p><p&g

35、t;  1.3 開發(fā)環(huán)境及運行環(huán)境</p><p><b>  1.3.1開發(fā)環(huán)境</b></p><p>  Intel(R) Core(TM)2 Duo T6600 2G內(nèi)存 320G硬盤</p><p>  Microsoft® Windows7旗艦版</p><p>  Visio 2010

36、</p><p>  1.3.2 運行環(huán)境</p><p>  Intel® Pentium® 2及以上處理器,32M以上內(nèi)存,4G以上硬盤</p><p>  Microsoft® Windows操作系統(tǒng)</p><p>  Borland Delphi7</p><p>  800*

37、600或以上的屏幕分辨率</p><p>  第二章 相關(guān)理論基礎(chǔ)</p><p><b>  2.1 網(wǎng)絡(luò)通信</b></p><p>  通俗地說,網(wǎng)絡(luò)協(xié)議就是網(wǎng)絡(luò)之間溝通、交流的橋梁,只有相同網(wǎng)絡(luò)協(xié)議的計算機(jī)才能進(jìn)行信息的溝通與交流。這就好比人與人之間交流所使用的各種語言一樣,只有使用相同語言才能正常、順網(wǎng)絡(luò)通信</p>

38、<p>  利地進(jìn)行交流。從專業(yè)角度定義,網(wǎng)絡(luò)協(xié)議是計算機(jī)在網(wǎng)絡(luò)中實現(xiàn)通信時必須遵守的約定,也就是通信協(xié)議。主要是對信息傳輸?shù)乃俾?、傳輸代碼、代碼結(jié)構(gòu)、傳輸控制步驟、出錯控制等作出規(guī)定并制定出標(biāo)準(zhǔn)。</p><p>  2.2 Delphi簡介</p><p>  Delphi,是Windows平臺下著名的快速應(yīng)用程序開發(fā)工具(Rapid Application Developm

39、ent,簡稱RAD)。它的前身,即是DOS時代盛行一時的“BorlandTurbo Pascal”,最早的版本由美國Borland(寶蘭)公司于1995年開發(fā)。主創(chuàng)者為Anders Hejlsberg。經(jīng)過數(shù)年的發(fā)展,此產(chǎn)品也轉(zhuǎn)移至Embarcadero公司旗下。Delphi是一個集成開發(fā)環(huán)境(IDE),使用的核心是由傳統(tǒng)Pascal語言發(fā)展而來的Object Pascal,以圖形用戶界面為開發(fā)環(huán)境,透過IDE、VCL工具與編譯器,配合

40、連結(jié)數(shù)據(jù)庫的功能,構(gòu)成一個以面向?qū)ο蟪绦蛟O(shè)計為中心的應(yīng)用程序開發(fā)工具。</p><p>  在古希臘神話里,DELPHI是智慧女神,米開朗基羅在意大利有著名的DELPHI雕像。</p><p>  Delphi也是一個希臘地名,那里的阿波羅神廟神諭非常靈驗,所以古希臘各個城邦都信奉delphi那里阿波羅神廟預(yù)言。</p><p>  由Borland公司推出的Del

41、phi是全新的可視化編程環(huán)境,為我們提供了一種方便、快捷的Windows應(yīng)用程序開發(fā)工具。它使用了MicrosoftWindows圖形用戶界面的許多先進(jìn)特性和設(shè)計思想,采用了彈性可重復(fù)利用的完整的面向?qū)ο蟪绦蛘Z言(Object-Oriented Language)、當(dāng)今世界上最快的編譯器、最為領(lǐng)先的數(shù)據(jù)庫技術(shù)。對于廣大的程序開發(fā)人員來講,使用Delphi開發(fā)應(yīng)用軟件,無疑會大大地提高編程效率,而且隨著應(yīng)用的深入,您將會發(fā)現(xiàn)編程不再是枯燥

42、無味的工作——Delphi的每一個設(shè)計細(xì)節(jié),都將帶給您一份欣喜。  </p><p>  Delphi是Borland公司研制的新一代可視化開發(fā)工具,可在Windows3.x、Windows95、WindowsNT、WindowsXP、Windows Vista、Windows7等環(huán)境下使用。當(dāng)前,DELPHI 也可以在LINUX平臺上開發(fā)應(yīng)用,其在LINUX上的對應(yīng)產(chǎn)品Kylix。 </p>&l

43、t;p>  DELPHI 擁有一個可視化的集成開發(fā)環(huán)境(IDE),采用面向?qū)ο蟮木幊陶Z言O(shè)bjectPascal和基于部件的開發(fā)結(jié)構(gòu)框架。Delphi它提供了500多個可供使用的構(gòu)件,利用這些部件,開發(fā)人員可以快速地構(gòu)造出應(yīng)用系統(tǒng)。開發(fā)人員也可以根據(jù)自己的需要修改部件或用Delphi本身編寫自己的部件。   </p><p>  “真正的程序員用c,聰明的程序員用Delphi”,這句話是對Delphi最經(jīng)典

44、、最實在的描述。Delphi被稱為第四代編程語言,它具有簡單、高效、功能強(qiáng)大的特點。和VC相比,Delphi更簡單、更易于掌握,而在功能上卻絲毫不遜色;和VB相比,Delphi則功能更強(qiáng)大、更實用。可以說Delphi同時兼?zhèn)淞薞C功能強(qiáng)大和VB簡單易學(xué)的特點。它一直是程序員至愛的編程工具。 </p><p>  Delphi具有以下的特性:基于窗體和面向?qū)ο蟮姆椒?,高速的編譯器,強(qiáng)大的數(shù)據(jù)庫支持,與Window

45、s編程緊密結(jié)合,強(qiáng)大而成熟的組件技術(shù)。但最重要的還是Object Pascal語言,它才是一切的根本。Object Pascal語言是在Pascal語言的基礎(chǔ)上發(fā)展起來的,簡單易學(xué)。  </p><p>  Delphi提供了各種開發(fā)工具,包括集成環(huán)境、圖像編輯(Image Editor),以及各種開發(fā)數(shù)據(jù)庫的應(yīng)用程序,如DesktopDataBase Expert等。除此之外,還允許用戶掛接其它的應(yīng)用程序開發(fā)工

46、具,如Borland公司的資源編輯器(Resourse Workshop)。   </p><p>  在Delphi眾多的優(yōu)勢當(dāng)中,它在數(shù)據(jù)庫方面的特長顯得尤為突出:適應(yīng)于多種數(shù)據(jù)庫結(jié)構(gòu),從客戶機(jī)/服務(wù)機(jī)模式到多層數(shù)據(jù)結(jié)構(gòu)模式;高效率的數(shù)據(jù)庫管理系統(tǒng)和新一代更先進(jìn)的數(shù)據(jù)庫引擎;最新的數(shù)據(jù)分析手段和提供大量的企業(yè)組件。 </p><p>  Delphi發(fā)展至今,從Delphi1、Del

47、phi2到現(xiàn)在的Delphi2011,不斷添加和改進(jìn)各種特性,功能越來越強(qiáng)大。Delphi5開始添加了對IDE(集成開發(fā)環(huán)境)的很多改進(jìn)新特性,擴(kuò)展了數(shù)據(jù)庫支持(ADO和InterBase數(shù)據(jù)庫),帶有Internet支持的MIDAS改進(jìn)版,TeamSouse版本控制工具,轉(zhuǎn)換功能,框架概念以及很多的新組件與新特性。   </p><p>  Delphi 6.0是Borland公司推出的一套無論是界面還是功能都

48、近乎完美的應(yīng)用程序開發(fā)工具。與以前的Delphi版本相比,Delphi 6.0使用更簡便,效率也更高。 </p><p>  Delphi 7.0是Borland公司最新推出的一套無論是界面還是功能都近乎完美的應(yīng)用程序開發(fā)工具。與以前的Delphi版本相比,Delphi 7.0使用更簡便,效率更高,最穩(wěn)定的一個版本,被稱為開發(fā)人員的工具之最,也是Borland產(chǎn)品最頂峰時期,更是風(fēng)靡全球。   </p>

49、;<p>  Delphi2010內(nèi)置的Direct 2D模塊及開發(fā)庫,其新加的功能:擁有一個能同時運作于x86和x64的IDE,在此IDE下將會有跨平臺編譯器,能夠編譯用于linux和MAC的應(yīng)用程序;將會支持windows7下的觸摸式編程;強(qiáng)化的DataSnap;將支持云計算;將支持函數(shù)式編程,這需要很多時間,據(jù)David估計是2011會實現(xiàn)。</p><p>  2.3 Delphi的控件安裝

50、方法1、對于單個控件,Componet-->install component..-->PAS或DCU文件-->install;</p><p>  2、對于帶*.dpk文件的控件包,F(xiàn)ile-->Open(下拉列表框中選*.dpk)-->install即可;</p><p>  3、對于帶*.bpl文件的控件包,Install Packages-->

51、Add-->bpl文件名即可;</p><p>  4、如果以上Install按鈕為失效的話,試試Compile按鈕;</p><p>  5、是run time lib則在option下的packages下的runtimepackes加之。 如果編譯時提示文件找不到的話,一般是控件的安裝目錄不在Delphi的Lib</p><p>  目錄中,有兩種方法

52、可以解決:反安裝的源文件拷入到Delphi的Lib目錄下。或者</p><p>  Tools-->Environment Options中把控件源代碼路徑加入到Delphi的Lib目錄中即</p><p>  可。注意:所安裝的控件是否與你所用的Delphi版本相適應(yīng)。</p><p>  RxLib的安裝: 首先在Delphi 5 的 IDE 中將以前版

53、本的 Rxlib 反安裝,刪除 RXCTL5.BPL、</p><p>  RXDB5.BPL、 RXBDE5.BPL、DCLRX5.BPL、 DCLRXDB5.BPL 和DCLRXBD5.BPL。</p><p>  打開 Rx 的運行包 RXCTL5.DPK,在 Package 窗口中按 Compile 按鈕編譯 </p><p>  RXCTL5.DPK ,然

54、后用同樣方法編譯另兩個運行包RXDB5.DPK 和 RXBDE5.DPK ,將編</p><p>  譯后的三個 BPL 文件放到搜索路徑中,如 WINDOWS\SYSTEM等。</p><p>  在編譯完運行包后你必須將 RX 的設(shè)計期包安裝到 IDE 環(huán)境中。</p><p>  打開 Rx 的設(shè)計期包 DCLRX5.DPK,在 Package 窗口中按 Co

55、mpile 按鈕編譯,然后</p><p>  按 Install按鈕將設(shè)計期包注冊到組件面板中。用同樣的方法安裝 DCLRXDB5.DPK 和 </p><p>  DCLRXBD5.DPK。</p><p>  注意:不要在 Delphi IDE 中保存包資源(package sources)!幫助文件的安裝: </p><p>  單擊

56、 Delphi 中的 Help 菜單下的 Customize 菜單項,這時會彈出 OpenHelp 對話</p><p>  框,選擇在 Index 頁下,打開 Edit 菜單下的 Add Files 菜單,添加你要加入的幫</p><p>  助菜單,這樣你就可以在 Delphi 的 IDE 下使用該幫助文件了。</p><p>  控件刪除: 在Compon

57、ent/Install Packages中刪除。選Component/configure Palette…有pages和components兩個區(qū)域雙擊components區(qū)域,選中要刪除得控件,下面有Delete按鈕。但系統(tǒng)提供的控件只能Hide,不能delete。打開控件所在的包文件(*.dpk),從中刪除控件那個文件,再重新編譯該包即可如果是整個控件包都要刪除的話,project->Option->Pack

58、ages,刪掉那個packages就可以了。</p><p>  2.4 數(shù)據(jù)庫系統(tǒng)簡介</p><p>  數(shù)據(jù)庫系統(tǒng)是一個實際可運行的存儲、維護(hù)和應(yīng)用系統(tǒng)提供數(shù)據(jù)的軟件系統(tǒng),是存儲介質(zhì)、處理對象和管理系統(tǒng)的集合體。它通常由軟件、數(shù)據(jù)庫和數(shù)據(jù)管理員組成。其軟件主要包括操作系統(tǒng)、各種宿主語言,實用程序以及數(shù)據(jù)庫管理系統(tǒng)。數(shù)據(jù)庫是依照某種數(shù)據(jù)模型組織起來并存放二級存儲器中的數(shù)據(jù)集合。這些數(shù)

59、據(jù)為多個應(yīng)用服務(wù),獨立于具體的應(yīng)用程序。數(shù)據(jù)庫由數(shù)據(jù)庫管理系統(tǒng)統(tǒng)一管理,數(shù)據(jù)的插入、修改和檢索均要通過數(shù)據(jù)庫管理系統(tǒng)進(jìn)行。數(shù)據(jù)庫管理系統(tǒng)是一種系統(tǒng)軟件,它的主要功能是維護(hù)數(shù)據(jù)庫并有效地訪問數(shù)據(jù)庫中任意部分?jǐn)?shù)據(jù)。對數(shù)據(jù)庫的維護(hù)包括保持?jǐn)?shù)據(jù)的完整性、一致性和安全性。數(shù)據(jù)管理員負(fù)責(zé)創(chuàng)建、監(jiān)控和維護(hù)整個數(shù)據(jù)庫,使數(shù)據(jù)能被任何有權(quán)使用的人有效使用。數(shù)據(jù)庫管理員一般是由業(yè)務(wù)水平較高、資歷較深的人員擔(dān)任。 數(shù)據(jù)庫系統(tǒng)的個體含義是指一個具體的數(shù)

60、據(jù)庫管理系統(tǒng)軟件和用它建立起來的數(shù)據(jù)庫;它的學(xué)科含義是指研究、開發(fā)、建立、維護(hù)和應(yīng)用數(shù)據(jù)庫系統(tǒng)所涉及的理論、方法、技術(shù)所構(gòu)成的學(xué)科。在這一含義下,數(shù)據(jù)庫系統(tǒng)是軟件研究領(lǐng)域的一個重要分支,常稱為數(shù)據(jù)庫領(lǐng)域。 數(shù)據(jù)庫研究跨越于計算機(jī)應(yīng)用、系統(tǒng)軟件和理論三個領(lǐng)域,其中應(yīng)用促進(jìn)新</p><p>  第3章 系統(tǒng)分析和傳輸協(xié)議</p><p><b>  3.1系統(tǒng)分析<

61、/b></p><p>  3.1.1 系統(tǒng)功能需求分析:</p><p>  作為一個電子郵件客戶端,其核心功能是能夠發(fā)送和接收郵件,其他附加功能如通訊錄的管理也是不可少的。</p><p>  郵件發(fā)送需求:要求能實現(xiàn)郵件的發(fā)送,不僅能發(fā)送純文本文件,而且能發(fā)送附件。郵件接收需求:要求能實現(xiàn)郵件的接收,不僅能接收純文本文件,而且能接收附件。附加功能需求:附

62、加功能主要有通訊錄管理,主要是對聯(lián)系人增加,刪除。</p><p>  根據(jù)需求,郵件的收發(fā)系統(tǒng)按照如下幾個模塊設(shè)計:用戶注冊,郵件發(fā)送,郵件接收,通訊錄管理幾個模塊。</p><p><b>  圖3.1</b></p><p>  3.1.2軟件的總體架構(gòu)如圖:</p><p><b>  圖3.2<

63、/b></p><p>  3.1.3程序功能框圖</p><p><b>  圖3.3</b></p><p>  3.1.4數(shù)據(jù)流程設(shè)計</p><p><b>  圖3.4</b></p><p><b>  3.2傳輸協(xié)議</b></

64、p><p>  3.2.1 SMTP 協(xié)議簡介</p><p>  SMTP(Simple Mail Transfer Protocol)即簡單郵件傳輸協(xié)議,它是一組用于由源地址到目的地址傳送郵件的規(guī)則,由它來控制信件的中轉(zhuǎn)方式。SMTP協(xié)議屬于TCP/IP協(xié)議族,它幫助每臺計算機(jī)在發(fā)送或中轉(zhuǎn)信件時找到下一個目的地。通過SMTP協(xié)議所指定的服務(wù)器,我們就可以把E-mail寄到收信人的服務(wù)器上

65、了,整個過程只要幾分鐘。SMTP服務(wù)器則是遵循SMTP協(xié)議的發(fā)送郵件服務(wù)器,用來發(fā)送或中轉(zhuǎn)你發(fā)出的電子郵件。</p><p>  SMTP 是一種提供可靠且有效電子郵件傳輸?shù)膮f(xié)議。 SMTP 是建模在 FTP 文件傳輸服務(wù)上的一種郵件服務(wù),主要用于傳輸系統(tǒng)之間的郵件信息并提供來信有關(guān)的通知。</p><p>  SMTP 獨立于特定的傳輸子系統(tǒng),且只需要可靠有序的數(shù)據(jù)流信道支持。 SMTP

66、 重要特性之一是其能跨越網(wǎng)絡(luò)傳輸郵件,即“ SMTP 郵件中繼”。通常,一個網(wǎng)絡(luò)可以由公用互聯(lián)網(wǎng)上 TCP 可相互訪問的主機(jī)、防火墻分隔的 TCP/IP 網(wǎng)絡(luò)上 TCP 可相互訪問的主機(jī),及其它 LAN/WAN 中的主機(jī)利用非 TCP 傳輸層協(xié)議組成。使用 SMTP ,可實現(xiàn)相同網(wǎng)絡(luò)上處理機(jī)之間的郵件傳輸,也可通過中繼器或網(wǎng)關(guān)實現(xiàn)某處理機(jī)與其它網(wǎng)絡(luò)之間的郵件傳輸。</p><p>  在這種方式下,郵件的發(fā)送可能

67、經(jīng)過從發(fā)送端到接收端路徑上的大量中間中繼器或網(wǎng)關(guān)主機(jī)。域名服務(wù)系統(tǒng)(DNS)的郵件交換服務(wù)器可以用來識別出傳輸郵件的下一跳 IP 地址。 </p><p>  在傳輸文件過程中使用25號端口。</p><p><b>  SMTP協(xié)議原理</b></p><p>  SMTP-簡單郵件傳輸協(xié)議(SimpleMailTransferProtoco

68、l),是定義郵件傳輸?shù)膮f(xié)議,它是基于TCP服務(wù)的應(yīng)用層協(xié)議,由RFC0821所定義。SMTP協(xié)議規(guī)定的命令是以明文方式進(jìn)行的。為了說明SMTP的工作原理,我們以向www.oray.gz.cn發(fā)送郵件為實例進(jìn)行說明。</p><p>  在linux環(huán)境下,使用"telnet www.oray.gz.cn 25"連接www.oray.gz.cn的25號端口(SMTP的標(biāo)準(zhǔn)服務(wù)端口);在windo

69、ws下使用telnet程序,遠(yuǎn)程主機(jī)指定為www.oray.gz.cn,而端口號指定為25,然后連接www.oray.gz.cn:交互過程如下:</p><p>  [lix@nslix]$telnetwww.oray.gz.cn25</p><p>  Trying202.99.11.120...</p><p>  Connectedtowww.oray.gz.

70、cn.</p><p>  Escapecharacteris'^]'.</p><p><b>  HELOideal</b></p><p>  220www.oray.gz.cnESMTPSendmail8.10.2/8.10.2;Mon,18Sep200013:40:44</p><p><

71、b>  +0800</b></p><p>  250www.oray.gz.cnHello[210.12.114.130],pleasedtomeetyou</p><p>  MAILFROM:ideal@btamail.net.cn</p><p>  2502.1.0IDEAL@btamail.net.cn...Senderok</p

72、><p>  RCPTTO:ideal@oray.gz.cn</p><p>  2502.1.5ideal@oray.gz.cn...Recipientok</p><p><b>  DATA</b></p><p>  354Entermail,endwith"."onalinebyitself&l

73、t;/p><p>  hello,Plstogettomeetu:)goodluck</p><p>  2502.0.0e8I5j1M11204Messageacceptedfordelivery</p><p><b>  QUIT</b></p><p>  2212.0.0www.oray.gz.cnclosingc

74、onnection</p><p>  Connectionclosedbyforeignhost.</p><p>  這里,HELO是客戶向?qū)Ψ洁]件服務(wù)器發(fā)出的標(biāo)識自己的身份的命令,這里假設(shè)發(fā)送者為ideal;MAILFROM命令用來表示發(fā)送者的郵件地址;RCPTTO:標(biāo)識接收者的郵件地址,這里表示希望發(fā)送郵件給ideal@oray.gz.cn,如果郵件接收者不是本地用戶,例如RCPT

75、TO:ideal@btamail.net.cn,則說明希望對方郵件服務(wù)器為自己轉(zhuǎn)發(fā)(Relay)郵件,若該機(jī)器允許轉(zhuǎn)發(fā)這樣的郵件,則表示該郵件服務(wù)器是OPENRELAY的,否則說明該服務(wù)器不允許RELAY;DATA表示下面是郵件的數(shù)據(jù)部分,輸入完畢以后,以一個"."開始的行作為數(shù)據(jù)部分的結(jié)束標(biāo)識;QUIT表示退出這次會話,結(jié)束郵件發(fā)送。</p><p>  這就是一個簡單的發(fā)送郵件的會話過程,

76、其實當(dāng)使用outlookexpress等客戶軟件發(fā)送時,后臺進(jìn)行的交互也是這樣的,當(dāng)然,SMTP協(xié)議為了處理復(fù)雜的郵件發(fā)送情況如附件等等,定義了很多的命令及規(guī)定,具體可以通過閱讀RFC821來獲得。</p><p>  當(dāng)你的一個朋友向你發(fā)送郵件時,他的郵件服務(wù)器和你的郵件服務(wù)器通過SMTP協(xié)議通信,將郵件傳遞給你郵件地址所指示的郵件服務(wù)器上(這里假設(shè)你的本地郵件服務(wù)器是Linux系統(tǒng)),若你通過telnet協(xié)議

77、直接登錄到郵件服務(wù)器上,則可以使用mail等客戶軟件直接閱讀郵件,但是若你希望使用本地的MUA(MailUserAgent,如outlookexpress等客戶軟件)來閱讀郵件,則本地客戶端通過POP3或IMAP協(xié)議與郵件服務(wù)器交互,將郵件信息傳遞到客戶端(如:win98系統(tǒng))。而如果你向你的朋友回復(fù)一封信件時,你所使用的MUA也是通過SMTP協(xié)議與郵件服務(wù)(一般為發(fā)送郵件地址對應(yīng)的email地址)器通信,指示其希望郵件服務(wù)器幫助轉(zhuǎn)發(fā)一

78、封郵件到你朋友的郵件地址指定的郵件服務(wù)器中。若本地郵件服務(wù)器允許你通過它轉(zhuǎn)發(fā)郵件,則服務(wù)器通過SMTP協(xié)議發(fā)送郵件到對方的郵件服務(wù)器。這就是接受和發(fā)送郵件的全部過程。</p><p>  3.2.2 POP3 協(xié)議簡介</p><p>  POP3(post office protocol 3)協(xié)議是郵局協(xié)議版本3的縮寫。最初是在1984年發(fā)表的RFC918中定義的,1985年的RFC9

79、37發(fā)表了第二版1988年的RFC1081又發(fā)表了第三個版本,簡稱POP3,當(dāng)前使用的標(biāo)準(zhǔn)是RFC1939。它規(guī)定怎樣將個人計算機(jī)連接到Internet的郵件服務(wù)器和下載電子郵件的電子協(xié)議 。它是因特網(wǎng)電子郵件的第一個離線協(xié)議標(biāo)準(zhǔn),POP3允許用戶從服務(wù)器上把郵件存儲到本地主機(jī)(即自己的計算機(jī))上,同時刪除保存在郵件服務(wù)器上的郵件,而POP3服務(wù)器則是遵循POP3協(xié)議的接收郵件服務(wù)器,用來接收電子郵件的。</p><

80、p>  Pop3適用C/S工作模式,在接收郵件的PC中,運行POP3客戶機(jī)程序,在用戶連接的ISP的郵件服務(wù)器中運行POP3服務(wù)器程序,兩者之間按照POP3相互發(fā)送信息,POP3客戶機(jī)發(fā)送給POP3服務(wù)器的消息成為POP3命令,POP3服務(wù)器返回的消息成為POP3響應(yīng)。</p><p>  POP3服務(wù)的TCP默認(rèn)端口為110,當(dāng)客戶主機(jī)需要從服務(wù)器上的郵件時,它向服務(wù)器發(fā)出建立一條TCP連接的請求。在連接

81、成功后客戶與服務(wù)器之間使用POP3協(xié)議會話的過程分為3個階段:1)認(rèn)證階段:每一個用戶只有提供了正確的用戶名和口令之后才有權(quán)訪問自己的郵箱,在這個階段里,可以使用USER、PASS和QUIT這3個POP3命令。2)郵件操作階段:用戶通過了認(rèn)證就相當(dāng)于打開了服務(wù)器上的用戶郵箱,客戶就有權(quán)進(jìn)行檢查、下載或者刪除郵件等操作了。這是會話過程進(jìn)入事物狀態(tài),此時可以使用的POP3命令有:NOOP、STAT、QUIT、LIST、RETR、TOP、DE

82、LE、RSET和UIDL。3)更新階段:當(dāng)客戶發(fā)送了QUIT命令后,系統(tǒng)就進(jìn)入了更新階段,POP3服務(wù)器釋放在操作階段中取得的資源,并將邏輯刪除的郵件進(jìn)行物理刪除,然后發(fā)送消息,關(guān)閉客戶與服務(wù)器之間的TCP連接,郵件處理的會話層結(jié)束。 </p><p>  3.2.3 MIME 協(xié)議</p><p>  MIME是一種Internet協(xié)議,全稱為“Multipurpose Interne

83、t Mail Extensions” ,中文名稱為“多用途互聯(lián)網(wǎng)郵件擴(kuò)展”。其實,它的應(yīng)用并不局限于收發(fā)Internet郵件——它已經(jīng)成為Internet上傳輸多媒體信息的基本協(xié)議之一。本文僅關(guān)心MIME的編碼算法。</p><p>  MIME編碼的原理就是把 8 bit 的內(nèi)容轉(zhuǎn)換成 7 bit 的形式以能正確傳輸,在接收方收到之后,再將其還原成 8 bit 的內(nèi)容。對郵件進(jìn)行編碼最初的原因是因為 Inter

84、net 上的很多網(wǎng)關(guān)不能正確傳輸8 bit 內(nèi)碼的字符,比如漢字等。MIME編碼共有Base64、Quoted-printable、7bit、8bit和Binary等幾種。</p><p>  Base64算法將輸入的字符串或一段數(shù)據(jù)編碼成只含有{“A”-“Z”, “a”-“z”, “0”-“9”, “ +”, “ /'}這64個字符的串,‘‘=''用于填充。其編碼的方法是,將輸入數(shù)據(jù)流每

85、次取6 bit,用此6 bit的值(0-63)作為索引去查表,輸出相應(yīng)字符。這樣,每3個字節(jié)將編碼為4個字符(3×8 → 4×6);不滿4個字符的以''=''填充。</p><p>  Quoted-printable算法根據(jù)輸入的字符串或字節(jié)范圍進(jìn)行編碼,若是不需編碼的字符,直接輸出;若需要編碼,則先輸出''='',后面跟著以2

86、個字符表示的十六進(jìn)制字節(jié)值。 </p><p>  MIME是一種技術(shù)規(guī)范,它原來是用于電子郵件的,現(xiàn)在也可以用于瀏覽器上,傳送可以供瀏覽器識別的信息,關(guān)于MIME的知識并是十分難懂的,有一些基本的計算機(jī)概念就可以理解了,但如果要進(jìn)一步使用,就必須注意內(nèi)容。實際上,我們在上網(wǎng)的時候就已經(jīng)接觸到了MIME,只是瀏覽器和服務(wù)器在底層實現(xiàn)了。 </p><p>  MIME有時候被錯誤地

87、理解為多媒體Internet郵件擴(kuò)展(Multimedia Internet Mail Extensions),這是一個錯誤,但是MIME在網(wǎng)上經(jīng)常用于多媒體應(yīng)用程序,所以人們以為這是它是多媒體郵件擴(kuò)展,而實際上它應(yīng)該被稱為多用途Internet郵件擴(kuò)展(Multipurpose Internet Mail Extensions),這一點一定要注意,因為有時候內(nèi)容里根本沒有非文本成份。 </p><p>  MI

88、ME對于郵件系統(tǒng)的擴(kuò)展是巨大的,因為在MIME出現(xiàn)以前,信件內(nèi)容如果要包括聲音和動畫,就必須把它變?yōu)锳SCII碼或把二進(jìn)制的信息變成可以傳送的編碼標(biāo)準(zhǔn),而接收方必須經(jīng)過解碼才可以獲得聲音和圖畫信息。MIME提供了一種可以在郵件中附加多種不同編碼文件的方法。這與原來的郵件是大大不同的。而現(xiàn)在MIME已經(jīng)成為了HTTP協(xié)議標(biāo)準(zhǔn)的一個部分。 </p><p>  MIME是服務(wù)器通知客戶機(jī)傳送文件是什么類型的主要方法,

89、客戶機(jī)瀏覽器也通過MIME告訴服務(wù)器它的參數(shù)。在網(wǎng)上,如果接收到的文件沒有MIME頭,就默認(rèn)它為HTML格式。但這樣也不好,因為當(dāng)MIME的包頭是text/plain時,瀏覽器將直接顯示而不關(guān)心它的什么字體,顏色之類的參數(shù),這樣顯示出來的內(nèi)容可不是很好看呀。 </p><p>  MIME頭是什么樣子要看它是用在電子郵件中還是用在瀏覽器上,兩者內(nèi)容可能有所不同。對于郵件頭來說,版本號,內(nèi)容類型聲明,編碼方式,內(nèi)容

90、描述是必不可少的。這是用于郵件頭中的格式,在下面,我們將重點說到在HTTP中傳送MIME頭,這時MIME頭要簡單一些。</p><p><b>  第4章 系統(tǒng)設(shè)計</b></p><p>  4.1 系統(tǒng)模塊劃分</p><p>  郵件收發(fā)系統(tǒng)是利用現(xiàn)有郵箱協(xié)議實現(xiàn)的一個電子郵件系統(tǒng)。根據(jù)系統(tǒng)需求與用戶需求,該郵件收發(fā)系統(tǒng)可以分為用戶管理模

91、塊、郵件收發(fā)模塊、文件管理模塊三個部分。其中具體應(yīng)該實現(xiàn)的功能有發(fā)送郵件、接收郵件。</p><p>  4.2 子模塊功能定義</p><p><b>  郵件收發(fā)模塊:</b></p><p>  發(fā)送郵件:系統(tǒng)可以選擇不同的郵件服務(wù)器做為發(fā)送郵件的接收者,允許發(fā)送文本、圖片等。</p><p>  功能:發(fā)送文本郵

92、件及附件。</p><p>  接收郵件:系統(tǒng)可以選擇不同郵件服務(wù)器的帳號,接收郵件。</p><p>  功能:查看、刪除、接收郵件及附件。</p><p>  4.3 系統(tǒng)設(shè)計方案</p><p>  Indy Clients中的TIdSMTP 和TIdPOP3這兩個組件和Indy Misc中的TIdMessage完全能夠?qū)Υ蟛糠萼]件服務(wù)

93、器進(jìn)行郵件收發(fā)操作。</p><p><b>  INDY簡介:</b></p><p>  Internet Direct(Indy)是一組開放源代碼的Internet組件,涵蓋了幾乎所有流行的Internet協(xié)議。是由Chad Z. Hower領(lǐng)導(dǎo)的一群開發(fā)者構(gòu)建的,可以從Indy的站點www.nevrona.com/indy上找到更多的信息并下載其新版本。Del

94、phi 7中所帶的是Indy 9。在其的組件面板上,一共安裝有100多個Indy組件。使用這些組件你可以開發(fā)基于各種協(xié)議的TCP客戶和服務(wù)器應(yīng)用程序,并處理相關(guān)的編碼和安全問題。可以通過前綴Id來識別Indy組件。</p><p>  Indy是阻塞式(Blocking)的。當(dāng)你使用Winsock開發(fā)網(wǎng)絡(luò)應(yīng)用程序時,從Socket中讀取數(shù)據(jù)或者向Socket寫入數(shù)據(jù)都是異步發(fā)生的,這樣就不會阻斷程序中其它代碼的執(zhí)

95、行。在收到數(shù)據(jù)時,Winsock會向應(yīng)用程序發(fā)送相應(yīng)的消息。這種訪問方式被稱作非阻塞式連接,它要求你對事件作出響應(yīng),設(shè)置狀態(tài)機(jī),并通常還需要一個等待循環(huán)。與通常的Winsock編程方法不同的是,Indy使用了阻塞式Socket調(diào)用方式。阻塞式訪問更像是文件存取。當(dāng)你讀取數(shù)據(jù),或是寫入數(shù)據(jù)時,讀取和寫入函數(shù)將一直等到相應(yīng)的操作完成后才返回。比如說,發(fā)起網(wǎng)絡(luò)連接只需調(diào)用Connect方法并等待它返回,如果該方法執(zhí)行成功,在結(jié)束時就直接返回,

96、如果未能成功執(zhí)行,則會拋出相應(yīng)的異常。同文件訪問不同的是,Socket調(diào)用可能會需要更長的時間,因為要讀寫的數(shù)據(jù)可能不會立即就能準(zhǔn)備好(在很大程度上依賴于網(wǎng)絡(luò)帶寬)。</p><p>  Windows上使用阻塞式Socket開發(fā)應(yīng)用程序具有如下優(yōu)點:</p><p>  1 :編程簡單——阻塞式Socket應(yīng)用程序很容易編寫。所有的用戶代碼都寫在同一個地方,并且順序執(zhí)行。</p&g

97、t;<p>  2 :容易向Unix移植——由于Unix也使用阻塞式Socket,編寫可移植的代碼就變得比較容易。Indy就是利用這一點來實現(xiàn)其多平臺支持而又單一源代碼的設(shè)計。</p><p>  3 :很好地利用了線程技術(shù)——阻塞式Socket是順序執(zhí)行的,其固有的封裝特性使得它能夠很容易地使用到線程中。</p><p>  阻塞式Socket的弱點:</p>

98、<p>  事物都具有兩面性,阻塞式Socket也不例外。它的一個主要的缺點就是使客戶程序的用戶界面“凍結(jié)”。當(dāng)在程序的主線程中進(jìn)行阻塞式Socket調(diào)用時,由于要等待Socket調(diào)用完成并返回,這段時間就不能處理用戶界面消息,使得Update、Repaint以及其它消息得不到及時響應(yīng),從而導(dǎo)致用戶界面被“凍結(jié)”。</p><p>  IdSMTP組件簡介:</p><p> 

99、 TIdSMTP是TIdMessageClient派生出的一個簡單郵件傳輸協(xié)議和SMTP客戶端。它的主要功能是發(fā)送郵件信息。</p><p><b>  常用的屬性:</b></p><p>  Host:SMTP郵件服務(wù)器的地址,如smtp.163.com。它與POP3地址不一樣。</p><p>  AuthenticationType:服

100、務(wù)器認(rèn)證類型,它有atNone,atLogin兩種,即不需要認(rèn)證和需要憑用戶名和密碼進(jìn)行認(rèn)證。</p><p>  Username:用戶名,這里與TIdPOP3 有點不一樣,即它不需要后綴,如lijian_chd</p><p>  Password:郵箱登錄密碼。如果AuthenticationType設(shè)置了atLongin則必須設(shè)置密碼和用戶名。</p><p&g

101、t;  TIdPOP3組件簡介:</p><p>  TIdPOP3 是用來接收郵件服務(wù)器的郵件信息到用戶端的一個組件。它實現(xiàn)了RFC 1939協(xié)議。</p><p>  在使用TIdPOP3組件時需設(shè)置它的幾個成員屬性。</p><p>  Host :指定郵件服務(wù)器,一般為pop3郵件服務(wù)器的地址,如 pop.163.com。</p><p&

102、gt;  Username :用戶名,也就是郵箱名,如lijian_chd@163.com。</p><p>  Password :郵箱密碼,在進(jìn)行收發(fā)郵件時組件需要憑密碼進(jìn)行登錄。</p><p><b>  其它成員屬性</b></p><p>  Connected:返回它與郵件服務(wù)器的連接狀態(tài),這true表示已經(jīng)連接。</p&g

103、t;<p>  CheckMessages:郵件數(shù),如果連接服務(wù)器成功,則可以獲得服務(wù)器端的郵件數(shù)。</p><p><b>  成員函數(shù)</b></p><p>  procedure Connect(const ATimeout: Integer = IdTimeoutDefault);</p><p>  與服務(wù)器連接函數(shù)。

104、參數(shù)為無效連接時等待的毫秒數(shù)。</p><p>  function RetrieveHeader(const MsgNum: Integer; AMsg: TIdMessage): Boolean;</p><p>  接收郵件頭信息,它有兩個參數(shù),MsgNum表示在接收第幾個郵件,從1開始,AMsg為郵件消息組件實例。</p><p>  function Re

105、trieve(const MsgNum: Integer; AMsg: TIdMessage): Boolean;</p><p>  接收郵件主體信息,它與RetrieveHeader的參數(shù)是一樣的。接收的郵件內(nèi)容將保存在AMsg中。</p><p>  function Delete(const MsgNum: Integer): Boolean;</p><p&g

106、t;  刪除郵件服務(wù)器中第幾個郵件。從1開始。</p><p>  procedure Disconnect; override;</p><p><b>  關(guān)閉連接。</b></p><p>  TIdMessage組件簡介:</p><p>  TIdMessage用來支持郵件消息協(xié)議,如POP3,SMTP,NNT

107、P等。TIdMessage支持多用途Internet郵件擴(kuò)展(MIME)協(xié)議。</p><p>  常用的TIdMessage的屬性:</p><p>  Subject:郵件主題,這個字符串經(jīng)過BASE64編碼的。所以在使用時需對它進(jìn)行解碼。</p><p>  MessageParts:這是TIdMessageParts類的一個實例,它用來存儲郵件的信息。如郵件

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論