ASP用JMail、CDO發送郵件 - 中國WEB開發者網絡 (http://www.webasp.net) -- 技術教程 (http://www.webasp.net/article/) --- ASP用JMail、CDO發送郵件 (http://www.webasp.net/article/9/8034.htm) |
| -- 作者:未知 -- 發佈日期: 2004-02-04 |
| 前一段時間有發過一個簡單的JMAIL郵件發郵件的代碼,今天就把這個代碼做一個具體的註解,並增加了另外兩個格式的代碼,並舉幾個簡單的例子:
首先是jmail.smtpmail的核心代碼: <% Set jmail = Server.CreateObject("JMAIL.SMTPMail") '創建一個JMAIL對像 jmail.silent = true 'JMAIL不會拋出例外錯誤,返回的值為FALSE跟TRUE jmail.logging = true '啟用使用日誌 jmail.Charset = "GB2312" '郵件文字的代碼為簡體中文 jmail.ContentType = "text/html" '郵件的格式為HTML的 jmail.ServerAddress = "Server Address" '發送郵件的服務器 jmail.AddRecipient Email '郵件的收件人 jmail.SenderName = "SenderName" '郵件發送者的姓名 jmail.Sender = "Email Address" '郵件發送者的郵件地址 jmail.Priority = 1 '郵件的緊急程序,1 為最快,5 為最慢, 3 為默認值 jmail.Subject = "Mail Subject" '郵件的標題 jmail.Body = "Mail Body" '郵件的內容 jmail.AddRecipientBCC Email '密件收件人的地址 jmail.AddRecipientCC Email '郵件抄送者的地址 jmail.Execute() '執行郵件發送 jmail.Close '關閉郵件對像 %> w3 Jmail4.3組件重新設計了其內部結構——使用Message對像代替原來的單一對像Jmail.smtpmail發送郵件,有些方法需要身份驗證的(如163、yahoo等),可以用下面的方法解決: <% Set jmail = Server.CreateObject("JMAIL.Message") '建立發送郵件的對象 jmail.silent = true '屏蔽例外錯誤,返回FALSE跟TRUE兩值j mail.logging = true '啟用郵件日誌 jmail.Charset = "GB2312" '郵件的文字編碼為國標 jmail.ContentType = "text/html" '郵件的格式為HTML格式 jmail.AddRecipient Email '郵件收件人的地址 jmail.From = "Email From for Sender" '發件人的E-MAIL地址 jmail.MailServerUserName = "UserName of Email" '登錄郵件服務器所需的用戶名 jmail.MailServerPassword = "Password of Email" '登錄郵件服務器所需的密碼 jmail.Subject = "Mail Subject" '郵件的標題 jmail.Body = "Mail Body" '郵件的內容 jmail.Prority = 1 '郵件的緊急程序,1 為最快,5 為最慢, 3 為默認值 jmail.Send("Server Address") '執行郵件發送(通過郵件服務器地址) jmail.Close() '關閉對像 %> 再講一下微軟自帶的CDONTS組件的發信的方法: <% Set cdomail = Server.CreateObject("CDONTS.NewMail") '建立郵件對像 cdomail.Subject = "Mail Subject" '郵件標題 cdomail.From = "Sender's Mail" '發件人的地址 cdomail.To = "Email will from" '收件人的地址 cdomail.Body = "Mail Body" '郵件的內容 cdomail.Send '執行發送 %> 這種方法發送郵件是最簡單的,同時也帶來一定的問題,就是很少有服務器會開這項服務! 我們寫程序,一般情況下都是說要代碼模塊化,這樣方便維護,同時也方便移植。因此,我在這裡將這個發郵件的寫成一個子程,在調用的時候可以直接調用(當然,如果你高興寫成函數的話也是可以的,這個主要是看個人興趣): <% '參數說明 'Subject : 郵件標題 'MailAddress : 發件服務器的地址,如smtp.163.com 'Email : 收件人郵件地址 'Sender : 發件人姓名 'Content : 郵件內容 'Fromer : 發件人的郵件地址 Sub SendAction(subject, mailaddress, email, sender, content, fromer) Set jmail = Server.CreateObject("JMAIL.SMTPMail") '創建一個JMAIL對像 jmail.silent = true 'JMAIL不會拋出例外錯誤,返回的值為FALSE跟TRUE jmail.logging = true '啟用使用日誌 jmail.Charset = "GB2312" '郵件文字的代碼為簡體中文 jmail.ContentType = "text/html" '郵件的格式為HTML的 jmail.ServerAddress = mailaddress '發送郵件的服務器 jmail.AddRecipient Email '郵件的收件人 jmail.SenderName = sender '郵件發送者的姓名 jmail.Sender = fromer '郵件發送者的郵件地址 jmail.Priority = 1 '郵件的緊急程序,1 為最快,5 為最慢, 3 為默認值 jmail.Subject = subject '郵件的標題 jmail.Body = content '郵件的內容 '由於沒有用到密抄跟抄送,這裡屏蔽掉這兩句,如果您有需要的話,可以在這裡恢復 'jmail.AddRecipientBCC Email '密件收件人的地址 'jmail.AddRecipientCC Email '郵件抄送者的地址 jmail.Execute() '執行郵件發送 jmail.Close '關閉郵件對像 End Sub '調用此Sub的例子 Dim strSubject,strEmail,strMailAdress,strSender,strContent,strFromer strSubject = "這是一封用JMAIL發送的測試郵件" strContent = "JMail組件發送測試成功!" strEmail = "runbing@eyou.com" strFromer = "runbing@eyou.com" strMailAddress = "mail.ubbcn.com" Call SendAction (strSubject,strMailaddress,strEmail,strSender,strContent,strFromer) %> 以上是我對發郵件代碼的一個粗略的見解,忘大家不吝賜教! |
| webasp.net |