基于Windows CE的嵌入式電子郵件系統設計_第1頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于windows ce的嵌入式電子郵件系統設計發(fā)送郵件的功能主要由embedded visual basic下的winsock控件實現winsock即windows socket,是微軟公司對socket編程接口的集成。winsock用法ip協議,同時支持tcp與udp協議,在收發(fā)郵件這類基本網絡數據通信的前提下,winsock控件是最好的挑選。以ah表示郵件發(fā)送的各部分設計:a 在這個郵件程序中,首先要銜接smtp的郵件服務因此在cmdsend_click()大事中最先實施的是wsock.remotehost = serverip銜接設定的服務器主機wsock.remoteport = s

2、erverport 設定默認的端口。b 然后開頭構造郵件格式,定義字符串m_date為發(fā)送日期,字符串mdata為郵件頭。語句m_date = formatdatetime(date, vbshortdate) & ", " & formatdatetime(date, vblongdate) & " " & formatdatetime(time, vblongtime) & "" & " -0600" 定義了郵件的發(fā)送日期。構造郵件標題 mdata = "

3、;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

4、) & strsubject & vbcrlf這個典型的郵件標題包含了:發(fā)件人,發(fā)件日期,收件人,主題以及發(fā)送郵件的程序名稱。c 當郵件程序連上服務器后,進如下一步打開郵件對話,利用winsock控件發(fā)送對話信息:wsock.senddata "helo" & " " & wsock.localhostname & vbcrlf假如smtp服務器沒有返回“250” 應答碼,則提醒“unable to establish transaction”.d 因為現在的郵件服務器多采納esmtp協議,因此需要客戶端程序發(fā)送用

5、戶名與密碼等認證信息,故在打開對話過后便進入“authentication“過程,:wsock.senddata "auth login" & vbcrlfif not waitforresponse("334", 10) thentxtmsg.text = "unable to connect with esmtp server."wsock.senddata encode(user) & vbcrlfwsock.senddata encode(pass) & vbcrlf在這里調用了自編的encode函數并

6、發(fā)送了經過base64編碼的用戶名與密碼信息。e 接著是發(fā)送發(fā)送方與接受方的地址:wsock.senddata "mail from:" & " " & strfrommail & vbcrlf 發(fā)送方wsock.senddata "rcpt to:" & " " & strtomail & vbcrlf 接受方f 下一步是發(fā)送消息體(針對不含附件的rfc822郵件):wsock.senddata "data" & vbcrlf 發(fā)送消息體

7、wsock.senddata mdata & vbcrlf 發(fā)送郵件標題wsock.senddata strcontent & vbcrlf 發(fā)送正文wsock.senddata "." & vbcrlf 發(fā)送結束符g 在發(fā)送郵件時做了附件的推斷:if combo1.list > 0 then 假如附件列表非空則轉入mime郵件的構造。mime郵件的標題部分與rfc822相同,但要擴充一些內容wsock.senddata "mime-version:1.0" & vbcrlfwsock.senddata "

8、content-type:multipart/mixed;" & vbcrlfwsock.senddata " boundary = unique-boundary" & vbcrlf & vbcrlfwsock.senddata " random garbage here " & vbcrlf & vbcrlfwsock.senddata vbcrlf & "-unique-boundary" & vbcrlfwsock.senddata "content-

9、type: text/plain;charset=us-ascii" & vbcrlf & vbcrlfwsock.senddata strcontent & vbcrlf & vbcrlfwsock.senddata "-unique=boundary" & vbcrlfwsock.senddata "content-type: multipart/parallel;boundary = unique-boundary-2" & vbcrlf & vbcrlfwsock.senddata

10、 "-unique=boundary -2" & vbcrlfwsock.senddata "content-type: application/octest-stream;" & vbcrlfwsock.senddata "name =" & strattachname & vbcrlfwsock.senddata "content-transfer-encoding:base64" & vbcrlfwsock.senddata "content-disposition:inline;" & vbcrlf這里附件也通過編碼加入了郵件

溫馨提示

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

評論

0/150

提交評論