。支持庫pop3。裝配窗裝配1。Subprogram _ Start子程序,整型,該子程序在程序啟動後首先執行標準輸出(“郵件接收支持庫測試”+#換行符)。
標準輸出(,“電子郵件登錄:“+#換行符”)
註冊接收回調函數。回調函數)
設置代理()
著陸()
快速瀏覽()
標準輸出(“快速瀏覽完成”+#換行符)
標準輸出(,“是否需要詳細查看每封郵件?(是/否)")
。如果為真(代碼(標準輸入(),1) = 121)
閱讀郵件()
如果真的結束了。
標準輸入()
Return (0)'可以根據需要返回任意值。子程序設置代理
。是否設置了局部變量,文本類型
。局部變量服務器類型,文本類型
。本地變量服務器地址,文本類型。
。本地變量服務器端口,文本類型
。本地變量服務器用戶,文本類型
。本地變量服務器的密碼,文本標準輸出(,“設置代理服務器(y/n)”+#換行符)
Set =標準輸入()
。如果為真(取代碼(是否設置,1) = 121)。
標準輸出(,“1: http 1.1代理,2: socks 5代理-”)
服務器類型=標準輸入()
標準輸出(,“代理服務器IP地址-”)
服務器地址=標準輸入()
標準輸出(,“端口號-”)
服務器端口=標準輸入()
標準輸出(,“用戶名-”)
服務器用戶=標準輸入()
標準輸出(,“密碼-”)
服務器密碼=標準輸入()
If(將代理服務器(設置為整數(服務器類型)、服務器地址、數值(服務器端口)、服務器用戶、服務器密碼)= true)
標準輸出(“設置代理服務器成功”+#換行符)
否則。
標準輸出(“無法設置代理服務器”)
標準輸入()
結束()
如果結束了。如果真的結束了
。子程序登錄
。本地變量文本變量,文本標準輸出(,“請輸入郵件服務器地址:“)
文本變量=標準輸入(真)
登錄信息[1] =文本變量
標準輸出(,“請輸入端口號:”)
文本變量=標準輸入(真)
登錄信息[2] =文本變量
標準輸出("請輸入用戶名:")
文本變量=標準輸入(真)
登錄信息[3] =文本變量
標準輸出(,“請輸入密碼:”)
文本變量=標準輸入(真)
登錄信息[4] =文本變量
標準輸出(,“請輸入等待時間(毫秒):”)
文本變量=標準輸入(真)
登錄信息[5] =文本變量
標準輸出("請輸入重試次數:")
文本變量=標準輸入(真)
登錄信息[6] =文本變量
標準輸出(,#換行)
連接到郵件服務器()。子例程連接到郵件服務器的標準輸出(,“請等待..........登錄郵件服務器時”)。
標準輸出(,# newline+# newline)
。如果為真(連接接收服務器(登錄信息[1],到數值(登錄信息[2]),登錄信息[3],登錄信息[4],到數值(登錄信息[5]),到數值(登錄信息[6])=假)
標準輸出(,“發生錯誤:+獲取電子郵件錯誤信息())
標準輸入()
結束()
如果真的結束了。
標準輸出(“郵箱連接成功”)
閱讀郵件()。子程序閱讀郵件
。局部變量的邏輯返回,邏輯類型
。局部變量total mail,整數類型。
。局部變量瀏覽,文本類型。
。本地變量郵件序列號,文本類型。
。局部變量計數變量,整數邏輯返回=獲取郵件信息(總郵件,總郵件)
如果為真(邏輯返回=假)
標準輸出(,“獲取電子郵件信息時出錯:"+獲取電子郵件信息時出錯())
標準輸入()
結束()。如果標準輸出真的結束了(,"總郵件:"+到文本(總郵件)+#換行符)
標準輸出(,"消息數:"+文本(消息總數)+#換行符)
重新定義數組(郵件、假郵件、總郵件)清除數組(郵件大小)
邏輯返回=獲取消息大小(-1,消息大小,消息總數)
如果為真(邏輯返回=假)
標準輸出(,“獲取每封電子郵件的大小時出錯:"+錯誤消息())
標準輸入()
結束()。如果真的結束標準輸出(“要不要快速瀏覽(Y/N)”)。
瀏覽=標準輸入(真)
標準輸出(,#換行)
標準輸出(,“請等待............接收郵件時”)。If(取代碼(瀏覽,1) = 121)
是否快速瀏覽=真。
。計數周期頭(消息總數,計數變量)
mail[計數變量] =收到的郵件的前幾行(計數變量,10)
。計數周期尾部()
否則。
。計數周期頭(消息總數,計數變量)
郵件[計數變量] =接收郵件(計數變量)
。計數周期尾部()
。如果標準輸出(,# newline)結束。
標準輸出(,#換行)
清除數組(郵件序列號組)
。計數周期頭(消息總數,計數變量)
收到的郵件序列號(計數變量,郵件序列號)
加入成員(郵件序列號組,郵件序列號)
。計數周期結束時的標準輸出()(“郵件已收到”)
斷開接收服務器()。如果為真(是否快速瀏覽=假)
郵件信息()
如果真的結束了。
。子程序郵件信息
。本地變量郵件序號,整數標準輸出(,* * * *已收郵件"+正文(郵件總數)+"件數"+#換行符)
標準輸出(“請輸入消息的二級序列號以查看消息內容:“”)
郵件輔助序號=終止值(標準輸入(真))
。If(郵件序號≥ 1且郵件序號≤郵件總數)
取郵件(郵件子序列號)
否則。
郵件信息()
如果結束了
。子例程獲取附件信息
。參數附件的索引號,整數類型
局部變量是否嵌入,是否符合邏輯。
。局部變量文件名,文本類型
。局部變量文件號,整數標準輸出(,# newline)
標準輸出(,"編號"+文本(附件索引號)+"附件信息"+#換行符)標準輸出(,"嵌入與否:")
嵌入=附件[附件索引號]。是否嵌入附件()被選中。
標準輸出(,到文本(嵌入或不嵌入))
標準輸出(,#換行)
。If(是否嵌入= true)
標準輸出(,"嵌入文件名:")
標準輸出(,附件[附件索引號]。取名字())
否則。
標準輸出(,"附加文件名:")
標準輸出(,附件[附件索引號]。取文件名())
如果結束了
標準輸出(,#換行符)標準輸出(,"附件大小:")
標準輸出(,到文本(附件[附件索引號])。Size()))
標準輸出(,#換行符)標準輸出(,"附件類型:")
標準輸出(,附件[附件索引號]。Take type())
標準輸出(,#換行符)標準輸出(,"編碼方法:")
標準輸出(,附件[附件索引號]。取編碼方法())
標準輸出(,#換行符)標準輸出(,"附件數據大小:")
標準輸出(,到文本(取字節集長度(附件[附件索引號])。取數據()))
標準輸出(,# newline)。獲取郵件的子程序。
參數郵件索引號,整數類型
。局部變量內容,文本類型
。局部變量是排序變量,標準輸出是整數類型(,“no .”+to text(郵件索引數)+“e-mail messages”+#換行符) (,“發件人姓名:")
標準輸出(,mail[郵件索引]。取發件人姓名())
標準輸出(,# newline)標準輸出(,"主題:")
標準輸出(,mail[郵件索引數]。帶題目())
標準輸出(,# newline)標準輸出(,"日期:")
標準輸出(,到文本(郵件[郵件索引號])。拍攝日期()))
標準輸出(,# newline)標準輸出(,"發件人地址:")
標準輸出(,mail[郵件索引號]。取發件人地址())
標準輸出(,# newline)標準輸出(,"返回地址:")
標準輸出(,mail[郵件索引數]。取回復地址())
標準輸出(,#換行符)標準輸出(,"消息大小:")
標準輸出(,到文本(消息大小[消息索引數])
標準輸出(,#換行符)標準輸出(,"郵件序列號:")
標準輸出(,郵件序列號組[郵件索引數])
標準輸出(,#換行符)標準輸出(,"原始信息長度:")
標準輸出(,轉為文本(取文本長度(mail[郵件索引號])。取原始資料()))
標準輸出(,#換行符)標準輸出(,"文本內容:")
content = mail[郵件索引數]。獲取文本內容()
標準輸出(,內容+#換行符)標準輸出(,“保存超文本文件”)
超文本內容(郵件索引數量)
標準輸出(,#換行符)標準輸出(,"附件數量:")
附件數量=郵件數量[郵件索引]。取附件的數量()
標準輸出(,到文本(附件數量))
標準輸出(,#換行)
如果為真(是否快速瀏覽=假)
標準輸出(,#換行)
附件=郵件[郵件索引數]。獲取附件()
。計數循環頭(取數組成員數(附件),計數變量)
獲取附件信息(計數變量)
。計數周期尾部()
選擇以保存附件(郵件索引的數量)
標準輸出(,#換行)
郵件信息()
如果真的結束了。
。子例程選擇保存附件。
參數選擇附件索引,整數類型
。本地變量的附件序列號,整數標準輸出(,“需要保存附件(Y/N)”)
If(代碼(標準輸入(),1) = 121)
標準輸出(“請輸入要保存的附件的序列號:“”)
附件二級序列號=終止值(標準輸入(真))
。如果為真(附件序列號≥ 1且附件序列號≤附件數量)
保存附件(附件二級序列號)
如果結束了,否則。
刪除子程序(選擇附件索引)
如果結束了
子程序刪除子程序
。參數索引
無論本地變量是否被刪除,文本標準輸出(“是否要刪除此電子郵件(Y/N)”)。
刪除=標準輸入(真)
。如果為真(取代碼(刪除與否,1) = 121)
連接接收服務器(登錄信息[1],到數值(登錄信息[2]),登錄信息[3],登錄信息[4],到數值(登錄信息[5]),到數值(登錄信息[6])。
If(刪除郵件(索引)= true)
標準輸出(“刪除成功”)
否則。
標準輸出(“刪除失敗”)
如果結束了。如果真的結束了
郵件重置()。子程序快速瀏覽
。局部變量計數變量,整數類型。計數循環頭(取數組成員數(電子郵件),計數變量)
獲取郵件(計數變量)
刪除子程序(計數變量)
標準輸出(,#換行)
。計數周期結束()。子程序保存附件。
參數保存索引,整數類型。
。局部變量文件名,文本類型
。局部變量文件號,整數類型。If(附件【保存索引】。是否嵌入附件()= true)
文件名=附件[保存索引]。取名字()
否則。
文件名=附件[保存索引]。取文件名()
如果結束了
標準輸出("請輸入保存路徑,以"+#引號+"\"+#引號+":")結尾)
文件號=打開的文件(標準輸入(真)+文件名,#重寫,)
If(插入字節集(文件號,附件[保存索引])。fetch data ()) = true)
標準輸出(“保存成功”)
否則。
標準輸出(“保存失敗”)
如果結束了
關閉文件(文件號)
標準輸出(,#換行符)。子程序郵件重置標準輸出(,#換行符)
標準輸出(,“您需要恢復已刪除的郵件嗎?(是/否)")
。如果為真(代碼(標準輸入(),)= 121)
。If (reset mail () = true)
標準輸出(“復位成功”)
標準輸出(“刪除的郵件已恢復”)
否則。
標準輸出(“復位失敗”)
如果結束了。如果真的結束了
。子程序超文本內容
參數索引,整數類型
。帶度數的局部變量,整數類型。
。局部變量文件號,整數類型。
局部變量的臨時文件,文本標準輸出(,“請輸入臨時瀏覽超文本文件的路徑,以“+#引號+”\ "+#引號+":")結尾)
臨時文件=標準輸入()
文件號=打開的文件(臨時文件+"臨時瀏覽。html“,# rewrite,)”創建壹個包含超文本內容的網頁文件以供瀏覽。
插入文本(文件編號、電子郵件[索引])。取超文本內容())
關閉文件(文件號)
。盤點周期頭(電子郵件[索引])。取附件的數量(),計數變量)
。如果為真(附件【計數變量】。是否嵌入附件()
文件號=打開的文件(臨時文件+附件[計數變量])。取name(),# rewrite,)'創建要瀏覽的超文本網頁的附件文件。
插入字節集(文件號,附件[計數變量])。獲取數據())
關閉文件(文件號)
。如果真的結束了。計算循環的結束次數()。子程序回調函數,邏輯型。
。參數類型,整數類型
參數號,整數類型
。參數字節數,整數類型。開始判斷(#命令類型。驗證用戶名=類型)
標準輸出(“驗證用戶信息”)
。默認。審判結束
返回(真)