老师,测试过30多M的附件可以正常发送,但目前有些文件大于100M的,以下代码没有办法知道是否发送成功;
问题:如果发送失败,怎么样可以返鐀信息回来。
Dim tb As Table = Tables("受控文件管理" & "_Table1")
Dim r As Row = tb.Current
e.Form.Controls("But生成内容").performclick
e.Sender.Enabled = False
Dim path As String,path1 As String
If r("发放形式") = "发放" Then
If r.IsNull("电子档文件") = False Then path = (Vars("OAPath") & "文控中心\受控文件\" & r("文件种类") & "\电子文件\" & r("电子档文件"))
path1 = (Vars("OAPath") & "文控中心\受控文件\" & r("文件种类") & "\" & r("文件编号") & " " & r("文件名称") & ".pdf")
Else
MessageBox.Show("不能发送已经回收的受控文件")
Exit Sub
End If
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~?
e.Sender.Enabled = False
e.Form.Controls("PictureBox1").Visible = True
e.Form.Controls("LabSend").Visible = True
Application.DoEvents()
MessageBox.Show("开始发送……………………")
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~?
Dim client As New Net.Mail.SmtpClient("smtp.163.com")
client.Timeout = 120000 '延时设置
client.UseDefaultCredentials = True
client.Credentials = new System.Net.NetworkCredential("000000@163.com", "00000000")
client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network
Dim [from] As New Net.Mail.MailAddress("000000@163.com", "000000 " & ChrW(&HD8) & " 采购部", System.Text.Encoding.UTF8)
' Set destinations for the e-mail message.
Dim [To] As New Net.Mail.MailAddress(e.Form.Controls("Text_邮箱").text)
' Specify the message content.
Dim message As New Net.Mail.MailMessage([from], [To])
message.cc.Add("0000000@163.com") '抄送
message.Body = e.Form.Controls("Txt_Content").text
' Include some non-ASCII characters in body and subject.
message.Body += Environment.NewLine ' & someArrows
message.BodyEncoding = System.Text.Encoding.UTF8
message.Subject = e.Form.Controls("Txt_Title").text ' & someArrows
message.SubjectEncoding = System.Text.Encoding.UTF8
' Set the method that is called back when the send operation ends.
'AddHandler client.SendCompleted, AddressOf SendCompletedCallback
'~~~~~~~~~~~~~~~~~~~~ 发送附档文件~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dim attachment As new System.Net.Mail.Attachment(path1, System.Net.Mime.MediaTypeNames.Application.Octet)
message.Attachments.Add(attachment)
Dim attachment1 As new System.Net.Mail.Attachment(path, System.Net.Mime.MediaTypeNames.Application.Octet)
message.Attachments.Add(attachment1)
AddHandler client.SendCompleted, AddressOf SendCompletedCallback
'~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dim userState As String = e.Form.Controls("Txt_Title").text
client.SendAsync(message, userState)
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·
MessageBox.Show("发送成功,请关闭窗口")