visual c#編寫實現pop3的程式
1.開啟vs.*** 2003.
3.新增命名空間
using system;
using system.drawing;
using system.collections;
using system.***ponentmodel;
using system.windows.forms;
using system.data;
using system.***;
using system.***.sockets;
using system.text;
using system.io;
4.主要**
為了防止介面在連線伺服器時死鎖,我另開了乙個執行緒
private void button1_click(object sender, system.eventargs e)
private void treadget()
//連線伺服器
private void connecttoserver()
catch(exception ex)
}//驗證使用者名稱,密碼
private void logonserver()
sw.writeline("pass "+this.passtextbox.text);
sw.flush();
trycatch(ioexception ioex)
if(result.substring(0,4)=="-err")
this.messagelistbox.items.add("登入成功");
}//獲取郵件列表
private void getemaillist()
}this.listbox1 .items.add(i.tostring()+" "+from+ " "+ subject);}}
private void button2_click(object sender, system.eventargs e)
參考資料
網路郵件收取使用的是pop3協議,了解pop3協議有助於我們加深對郵件系統的理解。而且使用pop3協議你還可以直接tel*** 到郵件伺服器上去收信。
一般tel*** pop3 server 110後就可以用這些命令了,大小寫不敏感, 不包括口令本身,注意不要讓口令回顯,等驗證通過後再允許回顯好了。
user username 使用者認可
pass password 認可 執行成功則狀態轉換
apop name,digest 認可一種安全傳輸口令的辦法,執行成功導致狀態轉換,請參見rfc 1321 。
stat 處理請求server回送郵箱統計資料,如郵件數、 郵件總位元組數
uidl n 處理 server返回用於該指定郵件的唯一標識, 如果沒有指定,返回所有的。
list n 處理 server返回指定郵件的大小等
retr n 處理 server返回郵件的全部文字
dele n 處理 server標記刪除,quit命令執行時才真正刪除
rset 處理撤消所有的dele命令
top n,m 處理 返回n號郵件的前m行內容,m必須是自然數
noop 處理 server返回乙個肯定的響應
quit client 希望結束會話。如果server處於"處理" 狀態,則現在進入"更新"狀態,刪除那些標記成刪除的郵件。如果server處於"認可"狀態, 則結束會話時server不進入"更新"狀態 。
使用tel*** 的乙個完整的收信例子如下:
tel*** pop3server 110
user username
pass ****
stat
list
retr 1
retr 2
...
dele 1
dele 2
...
quit
pop3協議簡介
8學院 vb教程 發布日期 2008年07月09日 將本文收藏到 收藏到本地 在internet,pop3 postofficeprotocol3 協議通常被用來接收電子郵件。這個協議很容易學,因為它只包含12個命令 其中有3個你完全可以忽略它們的存在 這些命令被客戶端計算機用來傳送給遠端伺服器。反...
POP3協議分析
pop3協議分析 pop3全稱為post office protocol version3,即郵局協議第3版。它被使用者 用來郵件伺服器取得郵件。pop3採用的也是c s通訊模型,對應的rfc文件為rfc1939。該協議非常簡單,所以我們只重點介紹其通訊過程,而相關的一些概念和術語請參考rfc文件或...
POP3命令簡介
什麼是 pop3pop3 命令 user username 認證使用者名稱 pass password 認證密碼認證,認證通過則狀態轉換 apop name,digest 認可一種安全傳輸口令的辦法,執行成功導致狀態轉換,請參見 rfc 1321 stat 處理請求 server 回送郵箱統計資料,...