亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 編寫你的電子郵件軟件 (2000年11月24日).txt

?? delphi 編程技巧
?? TXT
字號:
編寫你的電子郵件軟件 (2000年11月24日) 

本站更新  分類:   作者:中國程序員網站  推薦:   閱讀次數:634  
(http://www.codesky.net)  

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

  如果你每天上網,那么你肯定每天要使用電子郵件軟件,有沒有想過寫一個屬于自己的電子郵件軟件,
用自己寫的軟件來收信和發信,那種感覺肯定很好。 
  眾所周知,Delphi這個windows開發平臺中的貴族可以開發各個方面的應用程序,當然基于internet的
程序用它開發也是得心應手。 
  從Delphi3開始,它自己的控件中就有了基于interent開發的控件,不過這些控件不是Delphi本身的vcl
控件,而是ActiveX控件,這樣多多少少對于應用程序的發布不是很方便。好在借助于Delphi強大的控件技
術,我們可以從internet上找到很多免費的vcl控件來幫助我們寫電子郵件軟件,比較有名的是ics控件組和
sakemai控件組。Ics是一個全面的internet程序解決方案,而sakemail是專門用來開發電子郵件軟件的控
件。本文就是要介紹如何使用sakemail控件來寫支持POP3和SMTP協議的收信和發信程序。 

一、下載和安裝 
  sakemail在很多著名的Delphi站點都可以下載sakemail控件,比如www.torry.ru。在Delphi中安裝
sakemail是很簡單的,先將下載的zip文件釋放在你指定的目錄中,在Delphi中選擇打開文件,設定文件類
型為dpk,然后選擇目錄下的emaildak.dpk文件,選擇compile,然后install就行了。安裝完后,會在控件
的internet頁中添加4個相應的控件。 

二、收信程序 
讓我們先來看看利用POP3協議收信的范例程序是如何來寫的。 
從這個設計時的畫面(如圖1)看到,收信主要利用sakemail的sakmsglist和sakpop控件。讓我們來看看關鍵
的按鈕“Connect and retrieve msgs”后面的代碼。 

procedure TForm1.CntClick(Sender: TObject); 
begin 
//指定服務器 
SakPOP1.Host := EditHost.text; 
//指定用戶名稱 
SakPOP1.UserId := EditUserId.text; 
//指定用戶密碼 
SakPOP1.Passwd := EditPasswd.text; 

StatusBar1.Panels[0].text := 'Wait a moment, please...'; 
SakPOP1.connect;//連接服務器 
if SakPOP1.POPError then //連接服務器失敗 
begin 
MessageDlg( 'Connect failed. Maybe the server is down or not responding.', 
mtError, [mbOk], 0); 
exit; 
end; 
if not SakPOP1.login then //登陸服務器失敗 
begin 
ShowMessage('Unauthorized access...'); 
exit; 
end; 
//顯示共有多少電子郵件 
showMessage( 'You have ' + intToStr( SakPOP1.Init) + ' new msg(s) of ' +intToStr( 
SakPOP1.MsgsCount)); 
BtnCancel.Enabled := true; 
//接受電子郵件 
sakPOP1.retrieveAllMessages( SakMsgList1); 
BtnCancel.Enabled := false; 
SakPOP1.quit; //退出POP3連接 
if SakMsgList1.count > 0 then 
begin 
currentMsg := 0; 
showCurrentMsg; //顯示當前的電子郵件內容 
end; 
StatusBar1.Panels[0].text := 'Done. ' + intToStr( SakMsgList1.count) + ' msgs 
retrieved.'; 
end; 
在上面的程序中,我們已經加入了比較詳細的注釋。利用sakemail的控件來收取信件基本上有以下幾個步
驟: 
1.服務器連接的準備工作。你需要制定服務器的域名、用戶名和密碼。用以下語句實現: 
SakPOP1.Host:=EditHost.text; 
SakPOP1.UserId:=EditUserId.text; 
SakPOP1.Passwd:=EditPasswd.text; 
2.服務器連接。在這個階段如果一切正常,你只需要等待幾秒,但是如果服務器地址錯,或者用戶名和密碼
錯誤,則會退出,需要重新連接。用以下語句實現:SakPOP1.connect3.獲得郵件的數量。這是通過語句
SakPOP1.MsgsCount來獲得的。 
3.從服務器將郵件傳送到本地。 
顯示一封電子郵件由以下的過程完成: 
//顯示當前的郵件 
procedure TForm1.showCurrentMsg; 
var msg: TSakMsg; 
i: integer; 
begin 
msg := SakMsgList1.items[ currentMsg]; 
labelMsgId.Caption := msg.MessageId; 
labelInReplyTo.Caption := msg.InReplyTo; 
labelFrom.caption := msg.From; 
labelTo.caption := msg.SendTo; 
labelSubject.caption := msg.Subject; 
labelDate.caption := msg.Date; 
labelReplyTo.Caption := msg.ReplyTo; 
memo1.text := msg.Text.Text; {msg.Text is a StringList} 
if msg.AttachedFiles.Count > 0 then 
begin 
comboBoxAttach.items.clear; 
for i := 0 to msg.AttachedFiles.Count-1 do 
comboBoxAttach.items.add( msg.AttachedFiles[ i].fileName); 
comboBoxAttach.enabled := true; 
comboBoxAttach.itemIndex := 0; 
buttonSave.enabled := true; 
end 
else 
begin 
comboBoxAttach.enabled := false; 
buttonSave.enabled := false; 
end; 
end; 
從上面的過程我們可以看到顯示一個電子郵件的內容的程序并不復雜,正文內容直接交給memo來顯示,如果
有附件的話,讀出附件的數量,然后將其文件名寫入combo box中。收信程序的框架就大致如此了(如圖
2)。下面我們來看看發信程序。 


三、發信程序 
單純的發信程序很簡單,我們來看看“send”按鈕背后的代碼: 
//發信 
procedure TForm1.ButtonSendClick(Sender: TObject); 
begin 
screen.cursor := crHourGlass; 
StatusBar1.Panels[0].Text := 'Wait a moment, please'; 
SakSMTP1.host := EditHost.text; //指定地址 
SakMsg1.UserName := EditUserName.text; 
//以下指定發送人有關信息 
SakMsg1.From := EditFrom.text; 
SakMsg1.SendTo := EditTo.text; 
SakMsg1.Subject := EditSubject.text; 
SakMsg1.Text.Assign( Memo1.Lines);//信件正文 
SakSMTP1.connect;//連接服務器 
if not SakSMTP1.SMTPError then 
begin 
BtnCancel.Enabled := true; 
SakSMTP1.SendMessage( SakMsg1); 
BtnCancel.Enabled := false; 
SakSMTP1.quit; 
StatusBar1.Panels[0].Text := SakSMTP1.ReplyString; 
end; 
screen.cursor := crDefault; 
end; 
發信有以下幾個步驟: 
1.指定發送郵件相關的信息,比如服務器地址、發信人等。 
2.服務器連接。 
3.如果連接正常,發送電子郵件。 
利用SakeMail我們可以看到發信的步驟是比較簡單的。同時sakemail的發信控件提供了很多的控件,比如發
信前、發信后、解碼過程中等,可以讓你很好的控制發信的整個過程。同樣收信控件也具有相應的這些事
件。 

四、電子郵件程序需要注意的其它問題。 
  我們從以上的分析可以看出利用sakemail這個優秀的電子郵件引擎,我們也可以寫出具有自己特色的電
子郵件軟件或者讓自己的應用程序輕易地具有電子郵件功能。不過如果你像要寫一個真的可以用的電子郵件
軟件,至少還應該具有以下的設計和功能: 


  1.對于電子郵件的儲存和查找功能。不能保存郵件的電子郵件軟件是沒有實際使用價值的,同樣在這個
信息爆炸的時代,你的程序必須具有良好的查詢功能,讓使用者快速地找到需要的信息。 

  2.多帳戶功能。越來越多的免費電子郵件使得支持多帳戶功能成為我們選擇電子郵件軟件的一個基本特
性。多帳戶功能增加了程序設計的復雜性。 
  3.完備的郵件過濾功能。隨著越來越多的信息通過電子郵件的形式發送過來,如果不能建立起一套完備
的過濾功能,那么有些重要的郵件一旦被疏忽,影響可能很大。所以你的電子郵件程序應該具有一點人工智
能,能自動過濾、自動挑選甚至自動恢復指定的電子郵件。 
  4.文件格式的支持。Html格式的電子郵件可以具有更好的表現形式,因此你應該支持Html格式的電子郵
件。另外,因為很多的電子郵件附件是zip格式,如果你的電子郵件程序內部直接支持察看zip格式以及釋放
操作,就更加錦上添花了。 
  以上簡要概括地談了一些作者自己開發Email程序的看法和經驗,希望對于有興趣于開發電子郵件程序的
朋友有所幫助。 

本文來自中國程序員網站 
 
 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
免费高清不卡av| 国产目拍亚洲精品99久久精品| 日韩视频免费观看高清在线视频| 亚洲精品一区二区三区香蕉| 国产精品三级久久久久三级| 日韩电影在线观看电影| 成人高清视频在线| 欧美一级日韩一级| 亚洲自拍与偷拍| 99re亚洲国产精品| 五月天中文字幕一区二区| 成人av网址在线| 亚洲欧美成人一区二区三区| 97精品超碰一区二区三区| 亚洲另类色综合网站| 91麻豆精品秘密| 亚洲一区二区三区中文字幕在线| 色综合网站在线| 亚洲综合色区另类av| 欧美日韩激情一区二区三区| 日韩电影免费一区| 亚洲精品一区二区在线观看| 久久精品国产成人一区二区三区| 日韩欧美中文一区二区| 激情小说欧美图片| 国产喂奶挤奶一区二区三区| av中文字幕不卡| 亚洲国产综合91精品麻豆| 日韩欧美一卡二卡| 成人h动漫精品一区二区| 亚洲成人av一区二区三区| 色哟哟一区二区三区| 国产激情精品久久久第一区二区| 日韩国产在线一| 亚洲综合视频在线观看| 亚洲人成网站影音先锋播放| 久久亚洲春色中文字幕久久久| 91精品国产综合久久香蕉麻豆| 91视频免费观看| 高清久久久久久| 日本亚洲最大的色成网站www| 国产精品传媒入口麻豆| 欧美成人三级在线| 精品视频在线免费观看| 国产69精品久久99不卡| 麻豆专区一区二区三区四区五区| 自拍偷拍亚洲综合| 国产精品天美传媒| 精品国产露脸精彩对白| 9191成人精品久久| 在线精品国精品国产尤物884a| 国产成人久久精品77777最新版本| 日韩国产欧美视频| 亚洲超碰97人人做人人爱| 综合久久久久综合| 国产精品免费视频一区| 日本一区二区三区免费乱视频 | 久久综合久久鬼色中文字| 在线精品亚洲一区二区不卡| 91视频国产观看| 成人av资源在线| 91麻豆文化传媒在线观看| 99久精品国产| 在线观看日产精品| 日本电影欧美片| 精品视频1区2区| 91麻豆精品国产| 精品动漫一区二区三区在线观看| 日韩免费福利电影在线观看| 精品日韩av一区二区| 久久久99久久| 亚洲激情校园春色| 亚洲夂夂婷婷色拍ww47| 天堂蜜桃一区二区三区| 美女www一区二区| 国产99久久久久久免费看农村| 成熟亚洲日本毛茸茸凸凹| 91蜜桃视频在线| 91精品国产综合久久久久久久| 欧美变态口味重另类| 国产精品麻豆网站| 午夜成人在线视频| 精品一区二区av| 91麻豆产精品久久久久久| 欧美精品九九99久久| 久久精品视频一区二区三区| 亚洲免费在线观看视频| 国产在线精品免费av| 91丨porny丨首页| 日韩欧美亚洲另类制服综合在线| 中文字幕欧美激情一区| 日韩一区精品视频| 丁香六月综合激情| 欧美精品乱人伦久久久久久| 国产精品免费看片| 三级在线观看一区二区| www.一区二区| 精品国偷自产国产一区| 亚洲午夜视频在线观看| 成人性视频免费网站| 欧美成人性福生活免费看| 夜夜嗨av一区二区三区网页| 国产在线精品免费av| 欧美精品久久天天躁| 亚洲综合av网| 91丝袜呻吟高潮美腿白嫩在线观看| 精品剧情在线观看| 日韩精品亚洲专区| 精品视频在线视频| 亚洲人成人一区二区在线观看| 麻豆国产精品777777在线| 欧美美女一区二区在线观看| 玉足女爽爽91| 91视频观看视频| 亚洲欧美日韩国产成人精品影院 | 日韩激情在线观看| 欧美日韩中文字幕精品| 毛片av中文字幕一区二区| 欧美系列亚洲系列| 亚洲激情网站免费观看| 在线看不卡av| 亚洲成在线观看| 678五月天丁香亚洲综合网| 亚洲成人tv网| 日韩精品在线一区二区| 久久福利视频一区二区| 精品久久久久久久久久久久包黑料 | 国产精品亚洲成人| 欧美国产视频在线| 91色在线porny| 亚洲电影一区二区| 成人黄色777网| 8x福利精品第一导航| 国产欧美日韩在线看| 91无套直看片红桃| 精品一区二区三区免费播放 | 国产呦萝稀缺另类资源| 一区二区三区高清| 日韩午夜在线观看| 99久久精品国产毛片| 日韩中文字幕不卡| 精品美女在线播放| 色综合久久综合| 午夜久久久久久电影| 国产三级一区二区| 91丨porny丨在线| 青青草91视频| 亚洲视频网在线直播| 欧美猛男男办公室激情| 国产在线精品免费| 夜夜亚洲天天久久| 精品国产一区二区精华| 成人免费av资源| 亚洲国产色一区| 久久精品一区二区三区不卡 | 国内久久婷婷综合| 亚洲一区二区三区在线看| 久久久亚洲精华液精华液精华液| 在线观看成人免费视频| 99在线视频精品| 国产成人av网站| 男男视频亚洲欧美| 国产精品久久久久7777按摩| 7777精品伊人久久久大香线蕉完整版| 国产iv一区二区三区| 九九热在线视频观看这里只有精品| 亚洲欧洲精品成人久久奇米网| 91麻豆精品国产91久久久久久| 北岛玲一区二区三区四区| 国产精品456| 麻豆视频观看网址久久| 夜夜爽夜夜爽精品视频| 国产精品成人网| 国产精品视频免费| 久久久久久综合| 精品奇米国产一区二区三区| 欧美美女喷水视频| 欧美在线观看视频一区二区| 色综合久久久久综合| av中文字幕亚洲| 99久久综合国产精品| 成人精品国产一区二区4080| 国产风韵犹存在线视精品| 国产成人高清视频| 91美女视频网站| 欧美一卡二卡在线| 久久久www成人免费毛片麻豆| 中文字幕一区二| 亚洲成人先锋电影| 粉嫩av一区二区三区在线播放| 欧美专区在线观看一区| 精品久久久久久最新网址| 亚洲欧美偷拍卡通变态| 国内偷窥港台综合视频在线播放| 91麻豆swag| 国产日韩av一区二区| 奇米四色…亚洲| 色综合天天综合狠狠| 91麻豆免费观看| 欧美一区日韩一区|