powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ошибка при отправки почты через сервер
9 сообщений из 9, страница 1 из 1
Ошибка при отправки почты через сервер
    #39903847
Loxinfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые господа, нужна ваша помощь
Я посмотрел все темы связанные с отправкой почты через VB MS Access, нашел несколько вариантов, но не знаю как совместить их с моим кодом

К сожалению, человек, который писал код сейчас не доступен, сам я не разбираюсь
Код написан давно, при отправке не требовались SSL и т.д.
Сейчас почта не отправляется, выдает ошибку
intSMTPServerPort = 465 выдает ошибку (timeout occurred the smtp host did not respond to the request)
intSMTPServerPort = 587 выдает ошибку (550 smtp auth is required for message submission on port 587)

Я нашел такой код, он работает, но я не знаю как сделать так чтобы он получал данные из базы и формы:
Код: 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.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
Option Compare Database

Const cdoSendUsingPickup = 1 'Send message using the local SMTP service pickup directory.
Const cdoSendUsingPort = 2 'Send the message using the network (SMTP over the network).
Const cdoAnonymous = 0 'Do not authenticate
Const cdoBasic = 1 'basic (clear-text) authentication
Const cdoNTLM = 2 'NTLM
 
Function SendCDOMail(sTo As String, txtMailSubject As String, txtMsg As String, _
                     Optional sBCC As Variant, Optional AttachmentPath As Variant)
                   
    On Error GoTo Error_Handler
    Dim objCDOMsg       As Object
 
    Set objCDOMsg = CreateObject("CDO.Message")
 
    'CDO Configuration
    With objCDOMsg.Configuration.Fields
        '
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
        'Server port (typically 25, 587)
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
        'SMTP server IP or Name
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "webhosting2037.is.cc"
        'Type of authentication, NONE, Basic (Base64 encoded), NTLM
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
        'SMTP Account User ID
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "info@talisman.co.th"
        'SMTP Account Password
        .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "*******"
        'Use SSL for the connection (False or True)
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
        .Update
    End With
 
    'CDO Message
    objCDOMsg.Subject = txtMailSubject
    objCDOMsg.From = "info@talisman.co.th"
    objCDOMsg.To = "talisman.travel@gmail.com"
    objCDOMsg.TextBody = txtMsg
    ' Add attachments to the message.
   If Not IsMissing(AttachmentPath) Then
        If IsArray(AttachmentPath) Then
            For i = LBound(AttachmentPath) To UBound(AttachmentPath)
                If AttachmentPath(i) <> "" And AttachmentPath(i) <> "False" Then
                    objCDOMsg.AddAttachment AttachmentPath(i)
                End If
            Next i
        Else
            If AttachmentPath <> "" And AttachmentPath(i) <> "False" Then
                objCDOMsg.AddAttachmentAttachmentPath
            End If
        End If
    End If
    objCDOMsg.Send

Error_Handler_Exit:
    On Error Resume Next
    Set objCDOMsg = Nothing
    Exit Function
 
Error_Handler:
   MsgBox "The following error has occured." & vbCrLf & vbCrLf & amp & "Error Number: " & Err.Number & vbCrLf & _
           "Error Source: SendCDOMail" & vbCrLf & _
           "Error Description: " & Err.Description, _
           vbCritical, "An Error has Occured!"
    Resume Error_Handler_Exit
End Function



Ниже старый код, который берет инф. из базы данных и формы и делает отправку через сервер, он перестал таботать

Код: 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.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
Private Sub SendEmail_Click()
    Dim strSMTPServer As String, intSMTPServerPort As Integer
    Dim strFrom As String, strFromDisplayName As String
    Dim strTo As String, strToDisplayName As String
    Dim strCC As String, strCCDisplayName As String
    Dim strReplyTo As String
    Dim strUsername As String, strPassword As String, bolAuthenticate As Boolean
    Dim strSubject As String
    Dim strMsg As String
    Dim strAttachment As String
    
    Dim dbs As DAO.Database
    Dim rst As DAO.Recordset
    Dim strSQL As String

    'SMTP server settings
    strSMTPServer = "webhosting2037.is.cc"
    intSMTPServerPort = 465
    
    'From
    strFrom = "info@talisman.co.th"
    strFromDisplayName = "Talisman Travel Co. Ltd."

    'CC
    strCC = "office@tour2thailand.com"
    strCCDisplayName = "HotelContract"
    
    'ReplyTo (i.e. return address)
    strReplyTo = "info@talisman.co.th"

    'Authentication
    bolAuthenticate = False
    strUsername = "info@talisman.co.th"
    strPassword = "*******"
     
    'To
    Set dbs = CurrentDb()
    strSQL = "SELECT GenMail FROM Hotels WHERE Hotel=""" & Me![Hotel] & """"
    Set rst = dbs.OpenRecordset(strSQL)
    strTo = rst.Fields("GenMail") & vbNullString
    rst.Close
    Set rst = Nothing
    strToDisplayName = ""

    'Subject
    strSubject = "Attn.: " & Me![Manager] & ", " & Me![First]
    'strSubject = "Talisman Travel - Inquiry"
    
    If Len(Trim(strTo)) = 0 Then
        strTo = InputBox("THIS HOTEL HAS NO EMAIL ADDRESS. PLEASE, SPECIFY YOUR OWN", "EMAIL ADDRESS", "")
                         
        If Len(Trim(strTo)) = 0 Then
            MsgBox "THIS HOTEL HAS NO EMAIL ADDRESS. PLEASE, SPECIFY HOTEL'S EMAIL ADDRESS FIRST AND TRY AGAIN LATER", _
                    vbQuestion + vbOKOnly, "EMAIL"
                    
            Exit Sub
        End If
    End If
    
    strMsg = CreateHTMLReport
    strAttachment = modVBSendMail.VBSMCreateAttachmentFile(strMsg, "attachment.html")

    Set objSendMail = New vbSendMail.clsSendMail
    
    Call modVBSendMail.VBSMCreateEmail(objSendMail, strSMTPServer, intSMTPServerPort, _
                                        strFrom, strFromDisplayName, _
                                        strTo, strToDisplayName, strCC, strCCDisplayName, strReplyTo, _
                                        strSubject, strMsg, True, strAttachment, bolAuthenticate, _
                                        strUsername, strPassword)

    
    objSendMail.Send
    
    Set objSendMail = Nothing
End Sub



Подскажите п-та что модно добавить/изменить в старом коде, чтобы он заработал

Заранее благодарен за любую помощь
...
Рейтинг: 0 / 0
Ошибка при отправки почты через сервер
    #39903959
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Loxinfo
Подскажите п-та что модно добавить/изменить в старом коде, чтобы он заработал

Извините , нет времени разбираться в Вашем коде , вот здесь есть отправка письма из Access отправка почты . Может поможет .
...
Рейтинг: 0 / 0
Ошибка при отправки почты через сервер
    #39903970
Loxinfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMan, спасибо за помощь
Будем ковырять ваш пример
...
Рейтинг: 0 / 0
Ошибка при отправки почты через сервер
    #39904021
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Loxinfo
DarkMan, спасибо за помощь
Будем ковырять ваш пример

Я скачал пример базы с топика. У меня работает .
Будете проверять , подставьте свои данные smtpserver , username, password .
У меня на компе thunderbird . С outlook не пробовал.
...
Рейтинг: 0 / 0
Ошибка при отправки почты через сервер
    #39904067
Loxinfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMan, работает какой код?
Этот?
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
    Private Sub SendEmail_Click()
    Dim strSMTPServer As String, intSMTPServerPort As Integer
    Dim strFrom As String, strFromDisplayName As String
    Dim strTo As String, strToDisplayName As String
    Dim strCC As String, strCCDisplayName As String
    Dim strReplyTo As String
    Dim strUsername As String, strPassword As String, bolAuthenticate As Boolean
    Dim strSubject As String
    Dim strMsg As String
    Dim strAttachment As String
    
    Dim dbs As DAO.Database
    Dim rst As DAO.Recordset
    Dim strSQL As String


он у меня тоже работал только, из за смены интернет провайдера, код перестал работать
т.к., я описал это в своем первом посту, провайдер закрыл порт 587 и оставил 465 на котором нужен сертификат SSL, который не прописан в старом коде

intSMTPServerPort = 465 выдает ошибку (timeout occurred the smtp host did not respond to the request)
intSMTPServerPort = 587 выдает ошибку (550 smtp auth is required for message submission on port 587)

код отправляет письма через СЕРВЕР, он не юзает программы на компе
...
Рейтинг: 0 / 0
Ошибка при отправки почты через сервер
    #39904079
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Loxinfo
DarkMan, работает какой код?
Этот?

Давайте по порядку .
1.В моей ссылке есть пример базы данных , скачайте его , подставьте свои данные и попробуйте отправить .
Там отправка идет через 25 порт . Вы же мне пишете опять свой код , тем более обьявление переменных . Я не смотрел Ваш код , я сразу сказал.
2. Напишите , какие ошибки будут.
...
Рейтинг: 0 / 0
Ошибка при отправки почты через сервер
    #39904091
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Loxinfo
intSMTPServerPort = 587 выдает ошибку (550 smtp auth is required for message submission on port 587)
Попробуйте полазать по гуглу , по поводу ошибки 550 .
...
Рейтинг: 0 / 0
Ошибка при отправки почты через сервер
    #39904243
Loxinfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMan
Loxinfo
intSMTPServerPort = 587 выдает ошибку (550 smtp auth is required for message submission on port 587)
Попробуйте полазать по гуглу , по поводу ошибки 550 .


Спасибо, открыли глаза...
Я уже даже причину вам изложил/

( провайдер закрыл порт 587 и оставил 465 на котором нужен сертификат SSL, который не прописан в старом коде)
...
Рейтинг: 0 / 0
Ошибка при отправки почты через сервер
    #39904299
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Loxinfo
( провайдер закрыл порт 587 и оставил 465 на котором нужен сертификат SSL, который не прописан в старом коде)

Пжлст! Так меняйте провайдера или программу .
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ошибка при отправки почты через сервер
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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