Huhlo,
У меня есть типичный «CDO gmail Email send» макрос. Он работал надежно в течение нескольких лет. Я использую запасную учетную запись Gmail в качестве адреса, с которого она отправляет сообщения. Недавно я хотел поделиться макросом с некоторыми людьми. Поэтому я буду использовать другой адрес Gmail в качестве отправителя. У меня есть несколько других запасных учетных записей gmail, а также некоторые люди, с которыми я хочу поделиться макросом, зарегистрировали учетную запись и дали мне имя пользователя и пароль для добавления в макрос в качестве отправителя.
ВсегоУ меня только 10 учетных записей, 7 моих и три зарегистрированных другими. Все нормально работает при обычном ручном использовании аккаунта. 3 работы с макросом. 7 не
Насколько я могу судить. у всех одинаковые настройки. Это включает небезопасную настройку Вкл. Для «Менее безопасный доступ к приложениям» .
Счета были зарегистрированы в разное время в течение последних двух лет.
Одна из неработающих учетных записей была недавно зарегистрирована кем-то, у кого не было предыдущих учетных записей. Одна из учетных записей, которая работает, использовалась почти ежедневно в течение 2 лет как вручную, так и вместе с макросом, и отправила множество писем в разные места. Два аккаунта были зарегистрированы одновременно двумя людьми в моей семье. Они использовались в обычном / ручном режиме примерно в одинаковой степени в течение двух лет, но не ранее с моим макросом. Теперь я обнаружил, что одна учетная запись работает в макросе, а другая - нет.
Эти факты говорят мне о том, что нерабочие учетные записи не были заблокированы из-за подозреваемого спама. Кажется случайным, какие аккаунты работают, а какие нет.
Кто-нибудь еще имел эту проблему? Любые предложения по решению, кроме регистрации учетных записей и выбора тех, которые работают. Или есть некоторые настройки, которые я мог пропустить.
Ниже приведена упрощенная версия макроса, который я использую. (В настоящее время я в основном могу использовать 465 или 25 в качестве smtpserverport. Результаты почти всегда совпадают с любым из них. Лишь очень редко один будет работать, а другой нет. Это, похоже, зависит от места, из которого была сделана попытка),
Результаты, которые я получаю, довольно последовательны, включая использование макроса из разных мест и с разных IP-адресов. Иногда я получаю предупреждения о безопасности для всех учетных записей, когда использую учетные записи из новых мест. Но я всегда подтверждаю, что «это был я» . После выполнения этого действия я больше никогда не получаю предупреждения безопасности при использовании учетной записи в этом месте. Сразу после такого предупреждения аккаунт временно блокируется. Но блок удаляется после подтверждения «это был я»
3 адресов почти всегда работают с макросом. В редких случаях, когда они не работают, вторая попытка обычно бывает успешной. (Эти рабочие адреса были зарегистрированы мной где-то в последние два года).
7 адресов никогда не работают с макросом. Сообщение об ошибке в точке .Send всегда одинаково:
-2147220975: Die Nachricht konnte nicht and den SMTP-Server gesendet werden. Der Transportfehlercode lautet 0x80040217. Die Serverantwort lautet недоступен
Примерный перевод на английский язык: -2147220975: Не удалось отправить сообщение на SMTP-сервер. Код ошибки транспорта: 0x80040217. Ответ сервера недоступен
(Чтобы запустить приведенный ниже макрос, необходимо отредактировать, указав реальный адрес gmailAddress@gmail.com, реальный пароль gmailPassword и реальные места для отправки электронного письма на адрес. В и .cc место)
Sub Run_gMail_Send_Simplified() ' Run this macro with a valid gmailAddress@gmail.com and gmailPassword and real places to send the Email to at the .To and .cc place
Call gMail_Send_Simplified("gmailAddress@gmail.com ", "gmailPassword")
End Sub
Sub gMail_Send_Simplified(ByVal UsrNme As String, ByVal PsWd As String) '
With CreateObject("CDO.Message") ' ' -------------------* with LCDCW Library ( Linking Configuration Data Cods Wollups) which are used and items configured for the Exchange at Microsoft's protocol therof
Dim LCD_CW As String: Let LCD_CW = "http://schemas.microsoft.com/cdo/configuration/"
.Configuration(LCD_CW & "smtpusessl") = True '
.Configuration(LCD_CW & "smtpauthenticate") = 1
' ' Sever info
.Configuration(LCD_CW & "smtpserver") = "smtp.gmail.com" '
' The mechanism to use to send messages.
.Configuration(LCD_CW & "sendusing") = 2
.Configuration(LCD_CW & "smtpserverport") = 25 ' or 465
.Configuration(LCD_CW & "sendusername") = UsrNme '
.Configuration(LCD_CW & "sendpassword") = PsWd
' Optional - How long to try ( End remote SMTP server configuration section )
.Configuration(LCD_CW & "smtpconnectiontimeout") = 30 '
' Intraction protocol is Set/ Updated
.Configuration.Fields.Update '
'End With ' -------------------* End with LCDCW Library ( Linking Configuration Data Cods Wollups) which are used and items configured for the Exchange at Microsoft's protocol therof
' Data to be sent
.To = "mrlotus123@somemail.com"
.cc = "billandben@someuveremail.com"
.BCC = ""
.from = """gMail_Send_Simplified"" <""" & UsrNme & """>"
.Subject = "Hello from " & UsrNme & " using gMail_Send_Simplified" '
.TextBody = "Hi" & vbNewLine & vbNewLine & "Testing. Please ignore this EMail"
' Do it
On Error GoTo Bed ' Intended to catch a possible predicted error in the next line when running the routine
.send
On Error GoTo 0
Debug.Print "Done " & Format(Now(), "hh mm") & " with Username: " & UsrNme & vbCr & vbLf
End With ' End With CreateObject("CDO.Message") (Rem 1 Library End =======#
Exit Sub
Bed:
Debug.Print "Fail " & Format(Now(), "hh mm") & " with Username: " & UsrNme & vbCr & vbLf & " " & Err.Number & ": " & Err.Description & vbCr & vbLf
End Sub
В настоящее время я экспериментирую с настройкой некоторых вещей в макросе. Я сообщу, если у меня есть что-то новое, чтобы добавить.
Спасибо заранее Alan
РЕДАКТИРОВАТЬ: Вопрос также размещен здесь: https://support.google.com/mail/thread/17437986?hl=en&authuser=5