一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - 易語言 - 易語言發信寫法講解

易語言發信寫法講解

2022-02-27 16:43e語言之家 易語言

在本篇內容里小編給大家分享了關于易語言發信寫法的相關知識點以及實例代碼,需要的朋友們可以學習下。

眾所周知,易語言支持庫自帶"連接發信服務器()","斷開發信服務器()"命令...

但經過實踐應用,連接與斷開存在不穩定因素,目前暫不得知原由..會導致發信25端口占用卡住,最終切斷全部網絡連接..

經過查閱資料,得出另外一種發信方式,其原理是用客戶組件,連接smtp服務器,一步一步判斷返回值并發送數據..具體參看源碼!

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
.版本 2
.支持庫 shell
.支持庫 spec
 
.子程序 發送郵件通知
.參數 主題內容, 文本型
.局部變量 返回數據, 文本型
 
客戶1.連接 (smtp, 25)
返回數據 = 到文本 (等待數據 ())
.如果真 (取文本左邊 (返回數據, 3) ≠ “220”)
  斷開 ()
  信息框 (“發送失敗”, 0, )
  返回 ()
.如果真結束
發送字符 (“EHLO ” + smtp + #換行符) ' 服務器地址
返回數據 = 到文本 (等待數據 ())
.如果真 (取文本左邊 (返回數據, 3) ≠ “250”)
  斷開 ()
  信息框 (“發送失敗”, 0, )
  返回 ()
.如果真結束
發送字符 (“auth login” + #換行符)
返回數據 = 到文本 (等待數據 ())
.如果真 (取文本左邊 (返回數據, 3) ≠ “334”)
  斷開 ()
  信息框 (“發送失敗”, 0, )
  返回 ()
.如果真結束
發送字符 (BASE64編碼 (到字節集 (id)) + #換行符) ' 郵箱賬號
返回數據 = 到文本 (等待數據 ())
.如果真 (取文本左邊 (返回數據, 3) ≠ “334”)
  斷開 ()
  信息框 (“發送失敗”, 0, )
  返回 ()
.如果真結束
發送字符 (BASE64編碼 (到字節集 (password)) + #換行符) ' 密碼
返回數據 = 到文本 (等待數據 ())
.如果真 (取文本左邊 (返回數據, 3) ≠ “235”)
  斷開 ()
  信息框 (“發送失敗”, 0, )
  返回 ()
.如果真結束
發送字符 (“MAIL FROM: ” + “<” + id + “>” + #換行符) ' 發件人
返回數據 = 到文本 (等待數據 ())
.如果真 (取文本左邊 (返回數據, 3) ≠ “250”)
  斷開 ()
  信息框 (“發送失敗”, 0, )
  返回 ()
.如果真結束
發送字符 (“RCPT TO: ” + “<” + email + “>” + #換行符) ' 收件人
返回數據 = 到文本 (等待數據 ())
.如果真 (取文本左邊 (返回數據, 3) ≠ “250”)
  斷開 ()
  信息框 (“發送失敗”, 0, )
  返回 ()
.如果真結束
發送字符 (“DATA” + #換行符)
返回數據 = 到文本 (等待數據 ())
.如果真 (取文本左邊 (返回數據, 3) ≠ “354”)
  斷開 ()
  信息框 (“發送失敗”, 0, )
  返回 ()
.如果真結束
發送字符 (“Subject: ” + 主題內容 + #換行符) ' 主題
發送字符 (“From:” + “<” + id + “>” + #換行符)
發送字符 (“To:” + “<” + email + “>” + #換行符)
發送字符 (#換行符)
發送字符 (主題內容 + #換行符) ' 正文
發送字符 (#換行符 + “.” + #換行符)
返回數據 = 到文本 (等待數據 ())
.如果真 (取文本左邊 (返回數據, 3) ≠ “250”)
  信息框 (“發送失敗”, 0, )
.如果真結束
斷開 ()
 
 
.子程序 _客戶1_數據到達
 
數據 = 客戶1.取回數據 ()
 
.子程序 等待數據, 字節集
.局部變量 數據_, 字節集
 
.循環判斷首 ()
  處理事件 ()
.循環判斷尾 (數據 = { })
數據_ = 數據
數據 = { }
調試輸出 (到文本 (數據_))
返回 (數據_)
 
.子程序 _客戶1_連接斷開
 
調試輸出 (“連接斷開” + #換行符)
 
.子程序 發送字符
.參數 字符, 文本型
.局部變量 i, 整數型
 
調試輸出 (字符)
.計次循環首 (取文本長度 (字符), i)
  客戶1.發送數據 (到字節集 (字符 (取代碼 (字符, i))))
.計次循環尾 ()
 
.子程序 斷開
 
發送字符 (“quit” + #換行符)
客戶1.斷開連接 ()
 
.子程序 BASE64編碼, 文本型
.參數 待編碼數據, 字節集, , 待編碼字節集
.局部變量 余數
.局部變量 臨時, 字節型, , "3"
.局部變量 變量
.局部變量 集合, 字節集
.局部變量 長度, 整數型
.局部變量 字符, 字節集
.局部變量 i
 
長度 = 取字節集長度 (待編碼數據)
.如果真 (長度 < 1)
  返回 (“”)
.如果真結束
余數 = 長度 % 3
.如果真 (余數 > 0)
  待編碼數據 = 待編碼數據 + 取空白字節集 (3 - 余數)
.如果真結束
長度 = 取字節集長度 (待編碼數據)
字符 = 取空白字節集 (長度 × 4 ÷ 3)
i = 1
集合 = 到字節集 (“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/”)
.變量循環首 (1, 長度, 3, 變量)
  臨時 [1] = 待編碼數據 [變量]
  臨時 [2] = 待編碼數據 [變量 + 1]
  臨時 [3] = 待編碼數據 [變量 + 2]
  字符 [i] = 集合 [右移 (臨時 [1], 2) + 1]
  字符 [i + 1] = 集合 [左移 (位與 (臨時 [1], 3), 4) + 右移 (臨時 [2], 4) + 1]
  字符 [i + 2] = 集合 [左移 (位與 (臨時 [2], 15), 2) + 右移 (臨時 [3], 6) + 1]
  字符 [i + 3] = 集合 [位與 (臨時 [3], 63) + 1]
  i = i + 4
.變量循環尾 ()
.如果真 (余數 > 0)
  長度 = 取字節集長度 (字符)
  .如果 (余數 = 1)
    字符 [長度 - 1] = 取代碼 (“=”, )
    字符 [長度] = 取代碼 (“=”, )
  .否則
    字符 [長度] = 取代碼 (“=”, )
  .如果結束
 
.如果真結束
返回 (到文本 (字符))

以上就是我們整理的關于發送信件寫法的全部內容,感謝大家對服務器之家的支持。

延伸 · 閱讀

精彩推薦
  • 易語言一步一步跟我學易語言之第二個易程序菜單設計

    一步一步跟我學易語言之第二個易程序菜單設計

    今天小編就為大家分享一篇關于的一步一步跟我學易語言之第二個易程序菜單設計,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要...

    易語言幫助手冊7092021-06-17
  • 易語言易語言獲取指定磁盤的名稱

    易語言獲取指定磁盤的名稱

    今天小編就為大家分享一篇關于易語言獲取指定磁盤的名稱,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來...

    易語言幫助手冊12662022-01-04
  • 易語言易語言在畫板中寫出指定文本當畫板中已滿會自動滾屏

    易語言在畫板中寫出指定文本當畫板中已滿會自動滾屏

    今天小編就為大家分享一篇關于易語言在畫板中寫出指定文本當畫板中已滿會自動滾屏,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,...

    易語言幫助手冊9092022-01-12
  • 易語言實例操作易語言載入窗口

    實例操作易語言載入窗口

    在本文中小編給大家整理的是關于易語言載入窗口的教程和步驟內容,需要的可以跟著學習下...

    易語言教程網19162022-03-02
  • 易語言易語言設置進度條邊框樣式的方法

    易語言設置進度條邊框樣式的方法

    今天小編就為大家分享一篇關于易語言設置進度條邊框樣式的方法,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨...

    易語言幫助手冊4422022-01-20
  • 易語言一步一步跟我學易語言之關于變量

    一步一步跟我學易語言之關于變量

    今天小編就為大家分享一篇關于一步一步跟我學易語言之關于變量,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨...

    易語言幫助手冊10822021-06-17
  • 易語言易語言生成exe文件的方法

    易語言生成exe文件的方法

    在本篇內容中小編給大家分享的是關于易語言生成exe文件的方法知識點,需要的朋友們參考下。...

    易語言教程網14792022-03-01
  • 易語言易語言關于程序進程和線程的基礎知識

    易語言關于程序進程和線程的基礎知識

    今天小編就為大家分享一篇關于易語言關于程序進程和線程的基礎知識,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起...

    三葉資源網6662022-02-24
主站蜘蛛池模板: 久久青青草视频在线观 | 好大好硬抽搐好爽想要 | 激情男人天堂 | 美女全身无遮挡 | 日本护士xxxx视频免费 | 视频在线91 | waswaswas免费| 亚洲色图色 | 熟睡中的麻麻大白屁股小说 | 69成人影院 | 婷婷久久综合 | 1377大但人文艺术包子铺 | 办公室恋情在线观看 | 亚洲精品在线网址 | 人人爽人人看 | 农夫色综合 | 99久久精品免费看国产一区 | 国产精品成人扳一级aa毛片 | 女同全黄h全肉动漫 | 国产精品欧美日韩一区二区 | 国产第一草草影院 | 肉文高h调教 | 公交车强校花系列小说 | 国产高清在线精品一区二区 | 无耻三级在线观看 | 欧美艳星kagney1ynn | 九九精品国产亚洲A片无码 九九99热久久999精品 | 九九热在线观看视频 | 日日爽日日操 | 男女肉粗暴进来下面好紧 | 哇嘎在线精品视频在线观看 | 好男人资源大全免费观看 | 亚洲免费在线观看视频 | 青青国产成人久久91网 | 99福利在线观看 | 色哟哟精品| 国产成人精品免费视频软件 | 国产高清路线一路线二2022 | 二区三区不卡不卡视频 | 91天堂国产在线 在线播放 | 精品国产麻豆AV无码 |