ASP用JMail、CDO發(fā)送郵件
發(fā)表時(shí)間:2024-02-03 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]前一段時(shí)間有發(fā)過(guò)一個(gè)簡(jiǎn)單的JMAIL郵件發(fā)郵件的代碼,今天就把這個(gè)代碼做一個(gè)具體的注解,并增加了另外兩個(gè)格式的代碼,并舉幾個(gè)簡(jiǎn)單的例子: 首先是jmail.smtpmail的核心代碼: <% Set jmail = Server.CreateObject("JMAIL.SMTP...
前一段時(shí)間有發(fā)過(guò)一個(gè)簡(jiǎn)單的JMAIL郵件發(fā)郵件的代碼,今天就把這個(gè)代碼做一個(gè)具體的注解,并增加了另外兩個(gè)格式的代碼,并舉幾個(gè)簡(jiǎn)單的例子:
首先是jmail.smtpmail的核心代碼:
<%
Set jmail = Server.CreateObject("JMAIL.SMTPMail") ’創(chuàng)建一個(gè)JMAIL對(duì)象
jmail.silent = true ’JMAIL不會(huì)拋出例外錯(cuò)誤,返回的值為FALSE跟TRUE
jmail.logging = true ’啟用使用日志
jmail.Charset = "GB2312" ’郵件文字的代碼為簡(jiǎn)體中文
jmail.ContentType = "text/html" ’郵件的格式為HTML的
jmail.ServerAddress = "Server Address" ’發(fā)送郵件的服務(wù)器
jmail.AddRecipient Email ’郵件的收件人
jmail.SenderName = "SenderName" ’郵件發(fā)送者的姓名
jmail.Sender = "Email Address" ’郵件發(fā)送者的郵件地址
jmail.Priority = 1 ’郵件的緊急程序,1 為最快,5 為最慢, 3 為默認(rèn)值
jmail.Subject = "Mail Subject" ’郵件的標(biāo)題
jmail.Body = "Mail Body" ’郵件的內(nèi)容
jmail.AddRecipientBCC Email ’密件收件人的地址
jmail.AddRecipientCC Email ’郵件抄送者的地址
jmail.Execute() ’執(zhí)行郵件發(fā)送
jmail.Close ’關(guān)閉郵件對(duì)象
%>
w3 Jmail4.3組件重新設(shè)計(jì)了其內(nèi)部結(jié)構(gòu)——使用Message對(duì)象代替原來(lái)的單一對(duì)象Jmail.smtpmail發(fā)送郵件,有些方法需要身份驗(yàn)證的(如163、yahoo等),可以用下面的方法解決:
<%
Set jmail = Server.CreateObject("JMAIL.Message") ’建立發(fā)送郵件的對(duì)象
jmail.silent = true ’屏蔽例外錯(cuò)誤,返回FALSE跟TRUE兩值j
mail.logging = true ’啟用郵件日志
jmail.Charset = "GB2312" ’郵件的文字編碼為國(guó)標(biāo)
jmail.ContentType = "text/html" ’郵件的格式為HTML格式
jmail.AddRecipient Email ’郵件收件人的地址
jmail.From = "Email From for Sender" ’發(fā)件人的E-MAIL地址
jmail.MailServerUserName = "UserName of Email" ’登錄郵件服務(wù)器所需的用戶(hù)名
jmail.MailServerPassword = "Password of Email" ’登錄郵件服務(wù)器所需的密碼
jmail.Subject = "Mail Subject" ’郵件的標(biāo)題
jmail.Body = "Mail Body" ’郵件的內(nèi)容
jmail.Prority = 1 ’郵件的緊急程序,1 為最快,5 為最慢, 3 為默認(rèn)值
jmail.Send("Server Address") ’執(zhí)行郵件發(fā)送(通過(guò)郵件服務(wù)器地址)
jmail.Close() ’關(guān)閉對(duì)象
%>
再講一下微軟自帶的CDONTS組件的發(fā)信的方法:
<%
Set cdomail = Server.CreateObject("CDONTS.NewMail") ’建立郵件對(duì)象
cdomail.Subject = "Mail Subject" ’郵件標(biāo)題
cdomail.From = "Sender’s Mail" ’發(fā)件人的地址
cdomail.To = "Email will from" ’收件人的地址
cdomail.Body = "Mail Body" ’郵件的內(nèi)容
cdomail.Send ’執(zhí)行發(fā)送
%>
這種方法發(fā)送郵件是最簡(jiǎn)單的,同時(shí)也帶來(lái)一定的問(wèn)題,就是很少有服務(wù)器會(huì)開(kāi)這項(xiàng)服務(wù)!
我們寫(xiě)程序,一般情況下都是說(shuō)要代碼模塊化,這樣方便維護(hù),同時(shí)也方便移植。因此,我在這里將這個(gè)發(fā)郵件的寫(xiě)成一個(gè)子程,在調(diào)用的時(shí)候可以直接調(diào)用(當(dāng)然,如果你高興寫(xiě)成函數(shù)的話也是可以的,這個(gè)主要是看個(gè)人興趣):
<%
’參數(shù)說(shuō)明
’Subject : 郵件標(biāo)題
’MailAddress : 發(fā)件服務(wù)器的地址,如smtp.163.com
’Email : 收件人郵件地址
’Sender : 發(fā)件人姓名
’Content : 郵件內(nèi)容
’Fromer : 發(fā)件人的郵件地址
Sub SendAction(subject, mailaddress, email, sender, content, fromer)
Set jmail = Server.CreateObject("JMAIL.SMTPMail") ’創(chuàng)建一個(gè)JMAIL對(duì)象
jmail.silent = true ’JMAIL不會(huì)拋出例外錯(cuò)誤,返回的值為FALSE跟TRUE
jmail.logging = true ’啟用使用日志
jmail.Charset = "GB2312" ’郵件文字的代碼為簡(jiǎn)體中文
jmail.ContentType = "text/html" ’郵件的格式為HTML的
jmail.ServerAddress = mailaddress ’發(fā)送郵件的服務(wù)器
jmail.AddRecipient Email ’郵件的收件人
jmail.SenderName = sender ’郵件發(fā)送者的姓名
jmail.Sender = fromer ’郵件發(fā)送者的郵件地址
jmail.Priority = 1 ’郵件的緊急程序,1 為最快,5 為最慢, 3 為默認(rèn)值
jmail.Subject = subject ’郵件的標(biāo)題
jmail.Body = content ’郵件的內(nèi)容
’由于沒(méi)有用到密抄跟抄送,這里屏蔽掉這兩句,如果您有需要的話,可以在這里恢復(fù)
’jmail.AddRecipientBCC Email ’密件收件人的地址
’jmail.AddRecipientCC Email ’郵件抄送者的地址
jmail.Execute() ’執(zhí)行郵件發(fā)送
jmail.Close ’關(guān)閉郵件對(duì)象
End Sub
’調(diào)用此Sub的例子
Dim strSubject,strEmail,strMailAdress,strSender,strContent,strFromer
strSubject = "這是一封用JMAIL發(fā)送的測(cè)試郵件"
strContent = "JMail組件發(fā)送測(cè)試成功!"
strEmail = "runbing@eyou.com"
strFromer = "runbing@eyou.com"
strMailAddress = "mail.ubbcn.com"