上來是其中一個(gè)貼子,其他的內(nèi)容在參考資料的網(wǎng)址里
專注于為中小企業(yè)提供網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)長沙免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了數(shù)千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
Visual Basic 6中發(fā)送郵件的新方法
用VB6編寫發(fā)送郵件的程序,有多種E-mail組件可供選擇,如MAPIMessages、IIS4.0附帶的CDONTS(NTS Collaboration Data Objects)以及許多第三方廠商開發(fā)的Email軟件等。本文介紹用CDONTS開發(fā)VB下的郵件程序方法。
1. 確認(rèn)已安裝SMTP服務(wù)器
首先,必須確認(rèn)在IIS服務(wù)器上已安裝SMTP服務(wù)器,這是安裝Option Pack時(shí)被缺省安裝的選項(xiàng)。如果SMTP服務(wù)器已安裝,在System32目錄下會存在一個(gè)名為cdonts.dll的文件。
2. 最簡單的郵件發(fā)送程序
以下是一個(gè)最簡單的郵件發(fā)送程序,它由me@hotmail.net向abc@263.net發(fā)出一封標(biāo)題為“Title”、內(nèi)容為“Hello”的E-mail:
Private Sub cmdSendMail_Click()
Dim objMail as Object
Set objMail=CreateObject("CDFONTS.DLL")
ObjMail.Send "me@hotmail.net ", "abc@263.net","Title","Hello"
Set objMail=nothing
End Sub
3. 發(fā)送郵件附件
如果有附加的文件需要隨同郵件傳送,可以使用CDONTS的AttachFile方法:
Private Sub cmdSendMail_Click()
Dim objMail as Object
Set objMail=CreateObject("CDFONTS.DLL")
With ObjMail
.From= "me@hotmail.net "
.To= "abc@263.net"
.Subject="Title"
.Body="Hello"
.AttachFile "c:\document\ sample.doc","sample.doc"
.Send
End With
Set objMail=nothing
End Sub
4. CDONTS組件常用屬性和方法
CDONTS組件常用的屬性和方法列舉如下:
屬性:
Version:返回CDONTS組件的版本號
MailFormat:郵件格式,1-普通文本類型;0-MIME類型
Cc:設(shè)置一個(gè)或多個(gè)參閱的郵件地址
From:郵件發(fā)送者的地址
To :郵件接受者的地址
Subject:標(biāo)題
Body:內(nèi)容
BodyFormat:內(nèi)容格式,1-普通文本;0-超文本
方法:
AttachFile:附加一個(gè)文件
AttachURL:附加一個(gè)地址
Send:發(fā)送郵件
5. 發(fā)送超文本格式的E-mail
你一定見到過許多使用超文本格式的E-mail,其中不但可以有圖片、聲音,甚至還可以嵌入動(dòng)畫。如果給你的朋友也發(fā)送一封這樣的郵件,一定會帶給他(她)意外的驚喜,因?yàn)檫@用一般的郵件發(fā)送程序是無能為力的。以下使用CDONTS組件發(fā)送一個(gè)HTML格式的郵件,其中包含有一幅名為sample.gif的圖片,程序如下:
Private Sub cmdSendMail_Click()
Dim objMail as Object
Set objMail=CreateObject("CDFONTS.DLL")
Dim strHTML as String
StrHTML=""
StrHTML= StrHTML+""
StrHTML = StrHTML +"
用CDONTS發(fā)送Email的例子"
StrHTML= StrHTML+"
"
StrHTML= StrHTML+"
以上例子嵌入了圖片sample.gif
"
StrHTML= StrHTML+""
With ObjMail
.From= "me@hotmail.net "
.To= "abc@263.net"
.Subject="Title"
.Body=strHTML
.AttachURL "c:\mydata\sample.gif","sample.gif"
.BodyFormat=0
.EmailFormat=0
.Send
End With
Set objMail=nothing
End Sub
到這里,相信大家一定發(fā)現(xiàn)SMTP郵件處理的一個(gè)缺陷了。SMTP服務(wù)器接收你的輸出消息,但并不做發(fā)送者名字和地址的驗(yàn)證,這本是由SMTP的異步發(fā)送機(jī)制所決定的,但有人可能別有用心地用它來假扮別人發(fā)送郵件!本文強(qiáng)烈建議各位切勿輕易試用,一旦讓ISP知道你的行徑,你的帳號極可能會被立即刪除。
'創(chuàng)建發(fā)件連接,根據(jù)你的發(fā)送郵箱的SMTP設(shè)置填充
Dim smtp As New System.Net.Mail.SmtpClient("smtp.163.com", 25)
'發(fā)件郵箱身份驗(yàn)證,參數(shù)分別為 發(fā)件郵箱登錄名和密碼
smtp.Credentials = New System.Net.NetworkCredential("用戶名", "密碼")
'創(chuàng)建郵件
Dim mail As New System.Net.Mail.MailMessage()
'郵件主題
mail.Subject = "郵件主題"
'主題編碼
mail.SubjectEncoding = System.Text.Encoding.GetEncoding("GB2312")
'郵件正文件編碼
mail.BodyEncoding = System.Text.Encoding.GetEncoding("GB2312")
'發(fā)件人郵箱
mail.From = New System.Net.Mail.MailAddress("example@163.com")
'郵件優(yōu)先級
mail.Priority = System.Net.Mail.MailPriority.Normal
'HTML格式的郵件,為false則發(fā)送純文本郵箱
mail.IsBodyHtml = True
'郵件內(nèi)容
mail.Body = "郵件正文內(nèi)容"
'添加收件人,如果有多個(gè),可以多次添加
mail.To.Add("收件人地址")
'定義附件,參數(shù)為附件文件名,包含路徑,推薦使用絕對路徑
'如果不需要附件,下面三行可以不要
Dim a As New System.Net.Mail.Attachment("附件文件")
'附件文件名,用于收件人收到附件時(shí)顯示的名稱
a.Name = "附件文件名"
'加入附件,可以多次添加
mail.Attachments.Add(a)
'發(fā)送郵件
Try
smtp.Send(mail)
MessageBox.Show("發(fā)送成功")
Catch
MessageBox.Show("發(fā)送失敗")
Finally
mail.Dispose()
End Try
你是不是要偷偷的、讓人不察覺下發(fā)郵件?如果是留下郵箱,不是我也不會了....
你給點(diǎn)分,我給你源代碼?
大哥、大姐 給點(diǎn)分吧,好讓我去提問題啊
注意:郵箱一點(diǎn)要126的郵箱,不行問我,我現(xiàn)在還能自動(dòng)發(fā)送.......
--------------------****----------------
Private Sub Form_Load()
Dim NameS As String
Dim Email As Object
NameS = ""
Set Email = CreateObject("CDO.Message")
Email.From = "doyilong@126.com" //發(fā)件人的郵箱地址
Email.To = "526896071@qq.com" // 收件人的郵箱地址
Email.Subject = "用VB代碼發(fā)的郵件!" //郵件標(biāo)題
Email.Textbody = "你收到用VB代碼發(fā)送的郵件了!"http://郵件內(nèi)容
Email.Configuration.Fields.Item(NameS "sendusing") = 2
Email.Configuration.Fields.Item(NameS "smtpserver") = "smtp.126.com"http://郵件發(fā)送服務(wù)器
Email.Configuration.Fields.Item(NameS "smtpserverport") = 25//郵件發(fā)送服務(wù)器開放的端口號 Email.Configuration.Fields.Item(NameS "smtpauthenticate") = 1
Email.Configuration.Fields.Item(NameS "sendusername") = "doyilong"http://發(fā)件人的帳號
Email.Configuration.Fields.Item(NameS "sendpassword") = "******"http://發(fā)件人的密碼
Email.Configuration.Fields.Update
Email.Send
End Sub
補(bǔ)充:發(fā)送文件要用這個(gè) Email.AddAttachment "d:\work.txt"
---------------****-----------------
發(fā)郵件,最好能有自己的郵件服務(wù)器,沒有的話,也可以用網(wǎng)易或139郵箱等,示例代碼:
SmtpClient client = new SmtpClient(smtp, smtpport)
{
UseDefaultCredentials = false,
Credentials = new NetworkCredential(登錄名, 密碼),
DeliveryMethod = SmtpDeliveryMethod.Network
};
var from = new MailAddress("發(fā)件人郵箱", "發(fā)件人姓名");
MailMessage message = new MailMessage
{
Sender = from,
From = from,
IsBodyHtml = false,
//Priority = MailPriority.High,
BodyEncoding = Encoding.UTF8
};
/*添加收件人列表*/
message.To.Add(new MailAddress("收件人郵箱", "收件人姓名"));
message.Subject = 郵件標(biāo)題;
message.Body = 郵件內(nèi)容;
//添加附件
message.Attachments.Add(new Attachment("C:\\abc.txt"));
client.Send(message);
在Identity2.0里面封裝了IIdentityMessageService接口,可以用來發(fā)送接收郵件。
看看
Imports System.Threading.Tasks
Imports System.Security.Claims
Imports Microsoft.AspNet.Identity
Imports Microsoft.AspNet.Identity.EntityFramework
Imports Microsoft.AspNet.Identity.Owin
Imports Microsoft.Owin
Imports Microsoft.Owin.Security
public function SendAsync(message as IdentityMessage) as task
dim credentialUserName = "郵箱登錄名"
dim sentFrom = "你的郵箱地址"
dim pwd= "郵箱登錄密碼";
dim client as new System.Net.Mail.SmtpClient("smtp服務(wù)器地址")
client.Port = 25'mtp郵件服務(wù)器端口
client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network
client.UseDefaultCredentials = false
dim credentials as new System.Net.NetworkCredential(credentialUserName, pwd)
client.EnableSsl = true
client.Credentials = credentials
dim mail as new System.Net.Mail.MailMessage(sentFrom, message.Destination)
mail.Subject = message.Subject
mail.Body = message.Body
return client.SendMailAsync(mail)
end function