以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  邮件发送  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=190256)

--  作者:漂亮美眉vszh
--  发布时间:2024/1/26 14:03:00
--  邮件发送
老师,平时邮件发送都正常的,
突然有一天不能使用了,发送不出去
换了一台计算机,能正常发送,就某一台不能发送

[此贴子已经被作者于2024/1/26 14:04:10编辑过]

--  作者:漂亮美眉vszh
--  发布时间:2024/1/26 14:06:00
--  
Dim mail As New System.Net.Mail.MailMessage()
                Dim Result As DialogResult
                Dim dz As String = drs(kii)("域名")  
                Dim dk As String = drs(kii)("端口")  
                Dim zh As String = drs(kii)("账号")  
                Dim mm As String=  drs(kii)("密码")  
                Dim fj As String = drs(kii)("邮箱") 
                
                
                Dim sj As String = ""
                Dim i As Integer = 0
                Dim drs1 As List(Of DataRow)
                Dim sjs As String
                Dim sjr As String
                Dim csr As String
                Dim Filter As String
                
                Dim dr As DataRow
                
                Dim drcz As DataRow
                Dim drf As DataRow
                
                Dim Wff As DataRow
                Dim Products As List(Of String)
                Products = DataTables("APQP发送邮件详情").GetValues("收件人邮箱","","[_SortKey]")
                For Each Product As String In Products
                    If Product <> "" Then
                        i = i + 1
                        If sj = "" Then
                            sj = Product
                        Else
                            mail.cc.Add(Product) \'抄送
                        End If
                        csr = csr & "/" & Product
                    End If
                Next
    
                Dim smtp As New System.Net.Mail.SmtpClient(dz,dk)
smtp.EnableSsl = True \'SSL
                smtp.Credentials = New System.Net.NetworkCredential(zh,mm)
                
                
                mail.Subject = zt
                
                mail.SubjectEncoding = System.Text.Encoding.GetEncoding("GB2312")
                
                mail.BodyEncoding = System.Text.Encoding.GetEncoding("GB2312")
                
                mail.From = New System.Net.Mail.MailAddress(fj,"EAPQP系统自动发送:" & tb1.value)
                
                mail.Priority = System.Net.Mail.MailPriority.Normal
                mail.IsBodyHtml = True
              \'  mail.Body = nr
mail.Body = body 
                sj = sj.Trim(",")
\'MessageBox.Show(400)
                If FileSys.DirectoryExists(CF_Address & "TempEmail\\" & _UserName & "\\") Then \'如果目录C:\\MyFolder存在
                    For Each File As String In FileSys.GetFiles(CF_Address & "TempEmail\\" & _UserName & "\\")
                        Dim attachment As new  System.Net.Mail.Attachment(file,  System.Net.Mime.MediaTypeNames.Application.Octet)
                        mail.Attachments.Add(attachment)
                    Next
                End If

              \'  MessageBox.Show(33333)

                mail.To.Add(sj)


--  作者:有点蓝
--  发布时间:2024/1/26 14:34:00
--  
提示什么错误?
--  作者:漂亮美眉vszh
--  发布时间:2024/1/26 15:17:00
--  

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

--  作者:有点蓝
--  发布时间:2024/1/26 15:31:00
--  
服务器拒收了。那应该不是代码的问题。是不是短时间在循环里发送了大量邮件?被当做垃圾邮件拒收了
--  作者:漂亮美眉vszh
--  发布时间:2024/1/30 14:22:00
--  
老师,找了几天,今天终于找到原因了:
发送时加了附件,附件没清掉,也清不掉,显示被占用,电脑没有打开此附件。
强制删除附件,也删除不了,后来关机后,先清掉附件,再发送邮件成功了。
如果自动清除附件?
    If FileSys.DirectoryExists(CF_Address & "TempEmail\\") Then
    FileSys.DeleteDirectory(CF_Address & "TempEmail\\",2,3) \'则删除之
    End If

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

--  作者:有点蓝
--  发布时间:2024/1/30 14:51:00
--  
如果手工强制删除都删除不了,代码也没有用的。应该是邮件进程还在发送,或者是杀毒软件什么的锁定了