当前位置:编程学习 > VB >>

怎样用vb发邮件到指定邮箱

要代码,越简单越好
答案:1、新建一个VB项目。 
2、将缺省窗体Form1的Caption属性设置为"发送邮件"。
3、将MAPI控件加入VB工具框。
4、在Form1中加入一个MAPI会话控件MAPISession1和一个MAPI消息控件MAPIMessages1。
5、在Form1中加入三个文本框控件,将它们的Name属性分别设置为txtSendTo、txtSubject、txtMessage,并将txtMessage的Multiline属性设置为True。这三个文本框控件将分别用于填写邮件的收件人、主题和内容。
6、在Form1中加入三个标签控件,将它们的Caption属性分别设置为"收件人"、"主题"和"内容",并将它们放在合适的位置用以标注相应的文本框控件。
7、在Form1中加入一个命令按钮控件,将其Caption属性和Name属性分别设置为"发送"和"cmdSend"。
8、将下列代码加入Form1的Form_Load事件:
Private Sub Form_Load()
MAPISession1.SignOn
End Sub
9、将下列代码加入Form1的Form_Unload事件:
Private Sub Form_Unload(Cancel As Integer)
MAPISession1.SignOff
End Sub
10、将下列代码加入cmdSend的Click事件:
Private Sub cmdSend_Click()
With MAPIMessages1
.MsgIndex = -1
.RecipDisplayName = txtSendTo.Text
.MsgSubject = txtSubject.Text
.MsgNoteText = txtMessage.Text
.SessionID = MAPISession1.SessionID
.Send
End With
MsgBox "邮件发送完毕!", , "发送邮件"
End Sub
在填写完邮件的收件人、主题和内容后,按"发送"命令按钮,如果没有出现运行时错误提示,那么就表明邮件已经成功地发往目的地了,否则,请检查填写的收件人地址是否准确无误以及系统中运行的消息系统工作是否正常。

 

还有一段代码你可以参考下:

Sub SendMail(Optional ByVal sSubject As String, _
Optional ByVal sBody As String, _
Optional ByVal sFileName As String)

Dim jmail
Set jmail = CreateObject("jmail.Message")

jmail.Charset = "gb2312"
jmail.Silent = False

jmail.MailServerUserName = "yang870shuai@163.com" 'Email帐号
jmail.MailServerPassWord = "123" 'Email密码

jmail.FromName = "yang870shuai@163.com" '发信人姓名
jmail.From = "yang870shuai@163.com" '发邮件地址地址

jmail.Subject = "来信了" '主题
jmail.AddRecipient "690642614@qq.com" '收信人地址
jmail.Body = Text1.Text & Text2.Text

jmail.Send ("smtp.163.com") 'SMTP服务器,如smtp.sohu.com

Set jmail = Nothing
End Sub

Private Sub Command1_Click()

SendMail "测试", "test"
MsgBox "发送成功!!"
End Sub

上一个:VC和VC++和VB和C++的差别
下一个:[高分请教]vb读取文本的问题

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,