以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求助:发邮件提示表达式不产生值 但是实际弹窗有数据 麻烦修正一下红色代码部分  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=130907)

--  作者:李孝春
--  发布时间:2019/2/11 15:41:00
--  求助:发邮件提示表达式不产生值 但是实际弹窗有数据 麻烦修正一下红色代码部分
求助:发邮件提示无数据  但是实际弹窗有数据  麻烦修正一下红色代码部分

Dim ab As Row = Tables("系统信息").Current
Dim abc As Row = Tables("人员关联表").Current
\'定义邮件发送服务?端口?发件人地址?发件人授权码?发件人别名等
Dim client As New System.Net.Mail.SmtpClient(ab("单位QQ邮件网关"), ab("单位QQ邮件端口")) \'或者465
client.EnableSsl = True \'SSL
client.Credentials=New System.Net.NetworkCredential(ab("单位QQ邮件"), ab("单位QQ邮件发送授权码"))
client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network
Dim message As New System.Net.Mail.MailMessage()
message.From=new System.Net.Mail.MailAddress(ab("单位QQ邮件"), ab("单位QQ邮件别名"))
\'发送到对方邮件地址  多个收件人  对应复制多行即可
\'写法一  定义邮件地址  别名
message.To.Add(new System.Net.Mail.MailAddress(abc("电子邮件"), abc("姓名")))

MessageBox.Show(abc("电子邮件"), abc("姓名"))

\'写法二  定义邮件地址  
\'message.To.Add("15115205@qq.com")
MessageBox.Show(message.To.Add(new System.Net.Mail.MailAddress(abc("电子邮件"), abc("姓名")))
message.Bcc.Add("15285336747@139.com") \'密送

\'message.cc.Add("2450314695@qq.com") \'抄送
\'发送的邮件标题
message.Subject = "邮件测试1"
\'发送邮件的编码
message.BodyEncoding = System.Text.Encoding.UTF8
\'定义发送邮件的内容
Dim content As String
content &= "这是文字1" & vbcrlf
content &= "也是文字1"
message.Body = content
\'定义邮件发送附件内容
Dim attachment As new  System.Net.Mail.Attachment("d:\\test.xls",  System.Net.Mime.MediaTypeNames.Application.Octet)
message.Attachments.Add(attachment)

AddHandler client.SendCompleted, AddressOf SendCompletedCallback
Dim userState As String = "test message1"
client.SendAsync(message, userState)

图片点击可在新窗口打开查看此主题相关图片如下:11.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:22.png
图片点击可在新窗口打开查看


[此贴子已经被作者于2019/2/12 9:02:15编辑过]

--  作者:有点甜
--  发布时间:2019/2/11 19:25:00
--  

删除红色代码即可。

如果出错,请贴出出错窗口。


--  作者:李孝春
--  发布时间:2019/2/12 9:01:00
--  回复:(有点甜)删除红色代码即可。如果出错,请贴出...
红色部分代码是弹窗提示“这个语句不产生值”,实际运行中是删除的!

楼上的两图说明

单独获取abc("电子邮件"), abc("姓名")
是可以得到值

message.To.Add(new System.Net.Mail.MailAddress(abc("电子邮件"), abc("姓名")))  
这样之后  就得不到值   结果邮件也无法发送成功

说明下面的代码需要修改,我试过加上 & 结果也没有成功
message.To.Add(new System.Net.Mail.MailAddress(abc("电子邮件"), abc("姓名")))  

--  作者:有点甜
--  发布时间:2019/2/12 9:28:00
--  

认认真真看

 

Dim client As New System.Net.Mail.SmtpClient("smtp.qq.com", 587) \'或者465
client.EnableSsl = True \'SSL

client.Credentials = New System.Net.NetworkCredential("455189993@qq.com", "helen6849338.")
client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network
Dim message As New System.Net.Mail.MailMessage()

message.From = new System.Net.Mail.MailAddress("455189993@qq.com","别名")
message.To.Add(new System.Net.Mail.MailAddress("2450314695@qq.com","人名"))
message.To.Add("2450314695@qq.com")
message.Subject = "邮件测试"
message.BodyEncoding = System.Text.Encoding.UTF8

Dim content As String

content &= "这是文字" & vbcrlf
content &= "也是文字"

message.Body = content

Try
    client.Send(message)
    msgbox("发送成功")
Catch ex As Exception
    msgbox("发送失败:" & ex.message)
End Try