各位DX,我的邮箱密码会不停地换,因为多人用. 想用VBA代码发邮件,但不知道如何设置密码以及在密码不正确的情况下如何用新的密码再发.一共有10个密码.谢谢,急!!!跪求
解决方案 »
- VB 上位机与松下plc fp1通信
- vb操作excel2007打印问题
- 求助3des加密解密,急,在线等
- MSHFLEXGRID控件讲座(2).网格的编辑,保存与加载
- Win2K里如何让程序不显示在 任务管理器 的 应用程序 列表里?
- 能不能不用数据环境,而在报表中显示出几个表的内容?高手请进!
- sqldmo 是什么对象?
- 为什么我用 FileCopy "f:\test.txt", "f:\test1.txt"对,但是用FileCopy "f:\test.xls", "f:\test1.xls"它确说没权限,但权限我明明完全
- 如何在一台PC上连接一个可由VB程序控制的“灯”呢?急!急!小弟这里先谢了!
- 如何屏蔽控件自身的事件?如Text控件在单击右键在消息函数中填写代码却弹出编辑菜单
- 九宫格 急急
- 关于ftp上传问题
当然,VBA也支持调用COM,用CreateObject就可以创建对象使用了。
你可以搜索一下ASP里使用Jmail的范例,ASP是JavaScript或VBScript的脚本,
功能还没有VBA多呢,所以就按照ASP的使用方法来使用没问题的
Sub Sendmail2()
Dim myName, myPassword, mySmtpServer
myName = "zhangzhenhai"
myPassword = "111111" '
mySmtpServer = "smtp.tom.com"
'我用的是Jmail pro4.3
Set JMail = Server.CreateObject("JMail.SMTPmail")
JMail.silent = True '屏蔽例外错误,返回FALSE跟TRUE两值J
JMail.Logging = True '启用邮件日志
'Jmail.Charset = "Utf-8"'邮件的文字编码为国标编码
'JMail.Charset = mcharset '"gb2312"
'Jmail.Charset = "US-ASCII"
JMail.ContentTransferEncoding = "base64"
JMail.Encoding = "base64"
'Jmail.ContentType = "text/html"'邮件的格式为HTML格式
JMail.ContentType = "text/plain"
JMail.MailServerUserName = myName '登录邮件服务器所需的用户名
JMail.MailServerPassword = myPassword '登录邮件服务器所需的密码
'Jmail.Prority = 3'邮件的紧急程序,3 为默认值,1 为最快,5 为最慢,
JMail.From = "[email protected]" '发件人的E-MAIL地址
JMail.FromName = "zhangzhenhai"
'JMail.AddHeader "Originating-IP", Request.ServerVariables("REMOTE_ADDR")
Dim ToEmailAddress, MailSubJect, MailBody
ToEmailAddress = "[email protected]"
MailSubJect = "title"
MailBody = "content"
JMail.AddRecipient ToEmailAddress '邮件收件人的地址
JMail.Subject = MailSubJect '邮件的标题
JMail.Body = MailBody '邮件的内容
'JMail.AddCustomAttachment( "anyfile.txt", "Contents of file" )
Dim succ
succ = JMail.Send(mySmtpServer, False) '执行邮件发送(通过邮件服务器地址)
If succ <> True Then
'Response.Write( Jmail.Log )
Else
response.write "发送成功"
End If
response.write (JMail.Log)
JMail.Close '()'关闭对象
Set JMail = Nothing '清除对象
End Sub
程序里要写代码,outlook也要设置。
Function SendSysMail(MailAddress,MailUser,MailTitle,MailInfo)
SendSysMail=SendMail("你的SMTP服务器","你的账号","你的密码","",MailAddress,MailUser,MailTitle,MailInfo,"邮件标题","你的邮箱地址",1)
End Function
Function SendMail(SMTPServer,SMTPServerUserName,SMTPServerPassword,MailDomain,MailtoAddress,MailtoName,Subject,MailBody,FromName,MailFrom,Priority)
dim JMail, msg
set JMail=Server.CreateObject("JMail.Message")
JMail.Charset="gb2312" '编码
JMail.silent=true '设置为true,JMail不会抛出例外错误.
JMail.ContentType = "text/plain" '邮件正文格式 '用来发送邮件的SMTP服务器(无效)
'JMail.ServerAddress = SMTPServer
'指定邮件服务器的地址。可以指定多个服务器,用分号点开。可以指定端口号。
'如果serverAddress保持空白,JMail会尝试解决远程邮件服务器,然后直接发送到服务器上去。???
'如:JMail.ServerAddress = &tquo;mail.mydom.net; mail2.mydom.net:2500" JMail.MailServerUserName = SMTPServerUserName '登录用户名
JMail.MailServerPassWord = SMTPServerPassword '登录密码
JMail.MailDomain = MailDomain '域名(如果用“[email protected]”这样的用户名登录时,请指明domain.com
JMail.AddRecipient MailtoAddress,MailtoName '收信人
JMail.Subject = Subject '主题
JMail.Body = MailBody '邮件正文(纯文本格式)
JMail.FromName = FromName '发信人姓名
JMail.From = MailFrom '发信人Email
JMail.Priority = Priority '邮件等级12345
msg = JMail.Send(SMTPServer)
JMail.Close
set JMail = nothing
if msg then
SendMail = "+ OK"
Else
SendMail = "- ERROR<BR>Smtp服务:" & SMTPServer & "<BR>用户帐号:" & SMTPServerUserName & "<BR>用户密码:" & SMTPServerPassword & "<BR>SMTP域名:" & MailDomain & "<BR>收件人邮箱:" & MailtoAddress & "<BR>收件人名:" & MailtoName & "<BR>收件人名:" & MailtoName & "<BR>主题:" & Subject & "<BR>邮件内容:" & MailBody & "<BR>发件人名:" & FromName & "<BR>发件人邮箱:" & MailFrom & "<BR>发送等级:" & Priority
End If
End function'直接调用SendSysMail就可以发邮件了,注意修改SendSysMail里的相关内容便可
SendSysMail("目标邮箱地址","发件人名称","邮件标题","具体的邮件内容")