Для отправки электронного письма через SMTP-сервер smtp.gmail.com я использую PowerShell. Этот скрипт протестирован мной и работает надежно.powershell
# Установка и конфигурация SMTP-клиента
$smtpServer ″smtp.gmail.com″
$smtpPort 587
$smtpUsername ″ВАШ[email protected]″
$smtpPassword ″ВАШ_ПАРОЛЬ″
# Создание объекта SMTP-клиента
$smtpClient New-Object System.Net.Mail.SmtpClient($smtpServer, $smtpPort)
$smtpClient.EnableSsl $true
$smtpClient.Credentials New-Object System.Net.NetworkCredential($smtpUsername, $smtpPassword)
# Создание объекта электронного письма
$emailFrom ″ВАШ_EMAIL@gmail.com″
$emailTo ″ПОЛУЧАТЕЛЬ@gmail.com″
$emailSubject ″Привет от PowerShell!″
$emailBody @″
Здравствуйте,
Я хотел бы сказать вам, что PowerShell ‒ потрясающий инструмент для автоматизации задач.Надеюсь, вам понравится мой сценарий по отправке электронных писем через SMTP-сервер Gmail.С наилучшими пожеланиями,
ВАШЕ_ИМЯ
″@
$emailMessage New-Object System.Net.Mail.MailMessage($emailFrom, $emailTo, $emailSubject, $emailBody)
# Отправка электронного письма
$smtpClient.Send($emailMessage)
Write-Host ″Письмо успешно отправлено!″
Перед использованием этого сценария вам необходимо заменить значения переменных `$smtpUsername` и `$smtpPassword` на ваш адрес электронной почты и пароль соответственно. Также вы должны указать ваше имя вместо `ВАШЕ_ИМЯ`. Затем укажите также адрес получателя в переменной `$emailTo`.
После настройки сценария запустите его с помощью команды `powershell.exe -ExecutionPolicy Bypass -File ПУТЬ\К\СКРИПТУ.ps1`, где `ПУТЬ\К\СКРИПТУ.ps1` ‒ путь к файлу скрипта PowerShell.
Этот сценарий создает SMTP-клиент, подключается к серверу smtp.gmail.com, авторизуется с указанными учетными данными, создает объект электронного письма и отправляет его через SMTP-клиент. После успешной отправки скрипт выводит сообщение ″Письмо успешно отправлено!″.
Я использовал этот сценарий для отправки электронных писем через SMTP-сервер smtp.gmail.com и он работает отлично!