using system;
using system.net.sockets;
using system.net;
using system.security.cryptography;
using system.io;
/// 類名:pop3 //
// 功能:接收電子郵件 //
/ namespace ztsx.email
///
/// 建構函式
///
/// 主機名稱或ip位址
public pop3(string host)
///
/// 建構函式
///
/// 主機名稱或ip位址
/// 主機的埠號
/// 乙個郵件接收物件
public pop3(string host,int port)
#region屬性
///
/// 主機名稱或ip位址
///
/// 主機名稱或ip位址
public string hostname
set}
///
/// 主機的埠號
///
/// 主機的埠號
public int port
set}
#endregion
#region 私有方法
///
/// 向網路訪問的基礎資料流中寫資料(傳送命令碼)
///
/// 可以用於網路訪問的基礎資料流
/// 命令列
/// 向網路訪問的基礎資料流中寫資料(傳送命令碼)
private void writetonetstream(ref networkstream netstream,string command)
///
/// 檢查命令列結果是否正確
///
/// 命令列的執行結果
/// 正確標誌
///
/// 型別:布林
/// 內容:true表示沒有錯誤,false為有錯誤
///
/// 檢查命令列結果是否有錯誤
private bool checkcorrect(string message,string check)
///
/// 郵箱中的未讀郵件數
///
/// 執行完list命令後的結果
///
/// 型別:整型
/// 內容:郵箱中的未讀郵件數
///
/// 郵箱中的未讀郵件數
private int getmailnumber(string message)
///
/// 得到經過解碼後的郵件的內容
///
/// 解碼前的郵件的內容
///
/// 型別:字串
/// 內容:解碼後的郵件的內容
///
/// 得到解碼後的郵件的內容
private string getdecodemailcontent(string encodingcontent)
catch(sx.encodeexception exc)}}
#endregion
///
/// 與主機建立連線
///
///
/// 型別:布林
/// 內容:連線結果(true為連線成功,false為連線失敗)
///
/// 與主機建立連線
public bool connect()
catch(socketexception exc)
catch(nullreferenceexception exc)
}#region pop3命令
///
/// 執行pop3命令,並檢查執行的結果
///
/// pop3命令列
///
/// 型別:字串
/// 內容:pop3命令的執行結果
///
private string executecommand(string command)
//讀取單行
else
strmessage = m_stmreader.readline();
//判斷執行結果是否正確
if(checkcorrect(strmessage,"+ok"))
return strmessage;
else
return "error";
}catch(ioexception exc)
}///
/// 在pop3命令中,list、retr和uidl命令的結果要返回多行,以點號(.)結尾,
/// 所以如果想得到正確的結果,必須讀取多行
///
///
/// 型別:字串
/// 內容:執行pop3命令後的結果
///
private string readmultiline()
return strtemp;
}//user命令
private string user(string user)
//pass命令
private string pass(string password)
//list命令
private string list()
//uidl命令
private string uidl()
//noop命令
private string noop()
//stat命令
private string stat()
//retr命令
private string retr(int number)
//dele命令
private string dele(int number)
//quit命令
private void quit()
///
/// 收取郵件
///
/// 使用者名稱
/// 口令
///
/// 型別:字串陣列
/// 內容:解碼前的郵件內容
///
private string receivemail(string user,string password)
return strmailcontent;}}
catch(pop3exception exc)
}#endregion
///
/// 收取郵件
///
/// 使用者名稱
/// 口令
///
/// 型別:字串陣列
/// 內容:解碼前的郵件內容
///
///收取郵箱中的未讀郵件
public string receive(string user,string password)
catch(pop3exception exc)
}///
/// 斷開所有與伺服器的會話
///
/// 斷開所有與伺服器的會話
public void disconnect()
catch(socketexception exc)
}///
/// 刪除郵件
///
/// 郵件號
public void deletemail(int number)}}
c 接收電子郵件類
using system using system.net.sockets using system.net using system.security.cryptography using system.io 類名 pop3 功能 接收電子郵件 namespace ztsx.email 建構函式 ...
c 接收電子郵件類
using system using system.net.sockets using system.net using system.security.cryptography using system.io 類名 pop3 功能 接收電子郵件 namespace ztsx.email 建構函式 ...
c 接收電子郵件類
using system using system.net.sockets using system.net using system.security.cryptography using system.io 類名 pop3 功能 接收電子郵件 namespace ztsx.email 建構函式 ...