Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / smtp клиент перестал отправлять письма / 15 сообщений из 15, страница 1 из 1
22.07.2014, 12:58
    #38702787
majhool001
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
При попытке отправить сообщение на любой e-mail адрес выкидывает ошибку
Сообщение не отправлено! Возможно, данный почтовый ящик не существует или заблокирован.

Коротко алгоритм:
в первом Combobox хранятся имена получателей
в Combobox2 их е-мэйлы по порядку.
Какой item-index выбран в первом комбобоксе такой выбирается и во втором.
---
удалял комбобоксы и вводил емэйл в текстбокс - та же ошибка.
в чем проблема?

Код vb.net

If ComboBox1.SelectedIndex = -1 Then
MsgBox("Вы не выбрали получателя!")
Else
Try
Dim email As New MailMessage
Dim smtp As SmtpClient
poluchatel = ComboBox2.SelectedItem
smtp = New SmtpClient(smtp1)
smtp.Credentials = New Net.NetworkCredential(mail, parol)
email.From = New MailAddress(mail)
email.To.Add(New MailAddress(poluchatel))
email.Body = TextBox1.Text
email.Subject = TextBox2.Text
If TextBox3.Text <> "" Then
email.Attachments.Add(New System.Net.Mail.Attachment(TextBox3.Text))
End If
smtp.Send(email)
MsgBox("Сообщение отправлено")
TextBox3.Clear()
TextBox2.Clear()
TextBox1.Clear()
ComboBox1.SelectedIndex = -1
TextBox1.Text = vbCrLf + "Сообщение отправлено:" + mail
Catch ex As Exception
MsgBox("Сообщение не отправлено! Возможно, данный почтовый ящик не существует или заблокирован.")
End Try
End If

...
Рейтинг: 0 / 0
22.07.2014, 13:02
    #38702793
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
Учимся использовать тэги оформления кода - FAQ
...
Рейтинг: 0 / 0
22.07.2014, 13:06
    #38702802
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
Начните с исследования того, что находится в ex.
...
Рейтинг: 0 / 0
22.07.2014, 13:27
    #38702836
majhool001
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
buser,

ну просто если не писать обработку

Catch ex As Exception
MsgBox("Сообщение не отправлено! Возможно, данный почтовый ящик не существует или заблокирован.")
End Try

то при попытке отправить письмо на несуществующий e-mail программа вылетает,а так выдается сообщение.
проблема в нем?
...
Рейтинг: 0 / 0
22.07.2014, 14:52
    #38703000
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
Информация о проблеме находится в ex... или в InnerException.
Первое, что попалось http://www.codeproject.com/Articles/79508/Mastering-Debugging-in-Visual-Studio-A-Beginn
...
Рейтинг: 0 / 0
22.07.2014, 15:07
    #38703012
majhool001
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
buser,

poluchatel получает рабочий емэйл в кач-ве значения переменной но все равно выдает ошибку
...
Рейтинг: 0 / 0
22.07.2014, 15:14
    #38703022
majhool001
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
majhool001,

вчера отправлялось стабильно.код не менял
...
Рейтинг: 0 / 0
22.07.2014, 15:19
    #38703034
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
majhool001вчера отправлялось стабильно.код не менялэто значит, что вчера не было ошибки в коде, просто сегодня она проявилась. Так что в InnerException, мы услышим?
...
Рейтинг: 0 / 0
22.07.2014, 15:26
    #38703050
majhool001
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
Shocker.Pro,

решил проблему
...
Рейтинг: 0 / 0
23.07.2014, 11:31
    #38703689
shoh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
majhool001,

как решил проблему, дай нам тоже решение
...
Рейтинг: 0 / 0
31.07.2014, 10:21
    #38709753
majhool001
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
проблема с smtp-клиентом.
программа считывает письмо в eml-формате и выводит его текст в текстбокс.
кодировка utf-8

Если отправлять используя этот код:
переменная copy хранит мой дополнительный email,переменная poluchatel хранит мой основной email,они 100% рабочие.

Вариант № 1
первый раз письмо отправилось без проблем и программа прочитала его.
На второй раз программа при попытке отправить письмо выкидывает мсдж-бокс который я сделал для исключения если ящик нерабочий.




Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
Imports System.Net.Mail
Imports System.Text

(...)

If ComboBox1.SelectedIndex = -1 Then
            MsgBox("Вы не выбрали получателя!")
        Else
            Try
                Dim email As New MailMessage
                Dim smtp As SmtpClient
                poluchatel = ComboBox2.SelectedItem
                smtp = New SmtpClient(smtp1)
                smtp.Credentials = New Net.NetworkCredential(mail, parol)
                email.From = New MailAddress(mail)
                email.To.Add(New MailAddress(poluchatel + ";" + copy))
                email.Body = TextBox1.Text
                email.Subject = TextBox2.Text
                If TextBox3.Text <> Nothing Then
                    email.Attachments.Add(New System.Net.Mail.Attachment(TextBox3.Text))
                End If
                smtp.Send(email)
                MsgBox("Сообщение отправлено!")
                TextBox3.Clear()
                TextBox2.Clear()
                TextBox1.Clear()
                ComboBox1.SelectedIndex = -1
                TextBox1.Text = vbCrLf + "Сообщение отправлено:" + mail
            Catch ex As Exception
                MsgBox("Данный почтовый ящик (e-mail) не существует или заблокирован!")
                TextBox3.Clear()
            End Try
        End If






Вариант № 2
Отправляется без проблем,но при чтении eml файла кракозябры,хотя кодировку указал utf-8


Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
        If ComboBox1.SelectedIndex = -1 Then
        MsgBox("Вы не выбрали получателя!")
         Else
         Try
        poluchatel = ComboBox2.SelectedItem
         Dim o_Mess As Object, v_Conf As String
          o_Mess = CreateObject("CDO.Message")
          v_Conf = "http://schemas.microsoft.com/cdo/configuration/"
           o_Mess.BodyPart.CharSet = "utf-8"
          With o_Mess
        .To = poluchatel + ";" + copy
           .From = mail
          .Subject = TextBox2.Text
          .TextBody = TextBox1.Text
          If TextBox3.Text <> Nothing Then
        .AddAttachment(TextBox3.Text)
         End If
         With .Configuration.Fields
        .Item(v_Conf & "sendusing") = 2
         .Item(v_Conf & "smtpserver") = smtp1
         .Item(v_Conf & "smtpauthenticate") = 1
         .Item(v_Conf & "sendusername") = mail
         .Item(v_Conf & "sendpassword") = parol
         .Item(v_Conf & "smtpserverport") = 25
         .Item(v_Conf & "smtpusessl") = False
        .Item(v_Conf & "smtpconnectiontimeout") = 60
         .Update()
        End With
         .send()
        MsgBox("Сообщение отправлено!")
        TextBox3.Clear()
         TextBox2.Clear()
        TextBox1.Clear()
        ComboBox1.SelectedIndex = -1
        TextBox1.Text = vbCrLf + "Сообщение отправлено:" + mail
        End With

        Catch ex As Exception
        MsgBox("Сообщение не отправлено! Возможно, данный почтовый ящик не существует или заблокирован.")
        TextBox3.Clear()
        End Try
        End If





В чем может быть проблема?
И как ее решить?
...
Рейтинг: 0 / 0
31.07.2014, 11:24
    #38709811
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
majhool001, негоже кетчить Exception а писать "Данный почтовый ящик (e-mail) не существует или заблокирован!"
Ознакомьтесь с теми исключениями, которые может кидать Send
...
Рейтинг: 0 / 0
31.07.2014, 11:33
    #38709823
majhool001
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
buser,
понял в чем была ошибка,спасибо.
...
Рейтинг: 0 / 0
31.07.2014, 11:43
    #38709836
carrotik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
majhool001,

,. у вас SMTP сервер внешний, или корпоративный? .. если второе - обратитесь к админу, пусть посмотрит логи ... если первое, имейте в виду, что настройки SMTP-сервера могут (и должны) включать в себя защиту от спама/DDOS и прочих нехорошестей, в частности, ограничивать длину сессии, период между сессиями и т.д. ...Может еще быть greylisting и куча иных защит ... Попробуйте медленно и размеренно отправлять ...
...
Рейтинг: 0 / 0
31.07.2014, 12:26
    #38709908
majhool001
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
smtp клиент перестал отправлять письма
carrotik,
как оказалось проблема была в синтаксисе,в строке где я указывал получателей.
ошибка появлалась из-за разделителя ";" т.к email-адрес: mail12345@mail.ru;mail123456@mail.ru
в таком формате он отказывался принимать. сделал так:

Код: vbnet
1.
2.
email.To.Add(New MailAddress(poluchatel))
email.To.Add(New MailAddress(copy))
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / smtp клиент перестал отправлять письма / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]