Отправка писем с помощью PowerShell только с BCC

Отправка писем с помощью PowerShell только с BCC

Мне нужно найти способ отправить письма 30 людям, я не хочу, чтобы они отправляли копии, я хочу, чтобы каждый из них получил письмо, так как оно выглядит так, как будто это письмо только для него. Я знаю, что могу использовать Outlook и оставить поле «кому» пустым, а в поле «СК» поместить только эти адреса электронной почты. Это хорошее решение, но мне нужно его автоматизировать. Я не могу найти способ использовать send-mailmessage powershell cmd, чтобы сделать то же самое. Самое близкое, что я могу сделать, это отправить его себе, а затем всем в качестве СК, или запустить цикл, отправляя одно письмо за другим с аргументом -to. Оба варианта мне не подходят. Можно ли как-то это сделать?

решение1

Согласен с Дэвидом.

На основе моих исследований, параметр -To является обязательным параметром, который может помочь предотвратить его превращение в спам-движок. Так что для вашего требования Powershell вы можете попробовать ввести свой собственный адрес электронной почты или что-то вроде "[email protected]" в поле "Кому".

решение2

Запрошенные действия недоступны с помощью командлета Send-MailMessage, однако вы можете использовать класс .net, net.mailчтобы добиться желаемого. Пожалуйста, посмотрите ниже, что вы можете включить в свой скрипт.

$SMTPserver = "<SMTP Endpoint>"
$fromAddress = "[email protected]"
$subject = "<Subject>"
$emailbody = "<body of email>"
$bccAddresses = @("[email protected]","[email protected]","[email protected]")

$mailer = new-object Net.Mail.SMTPclient($SMTPserver)
$msg = new-object Net.Mail.MailMessage

Foreach ($emailAddress in $bccAddresses){
    $msg.bcc.add($emailAddress)
}

$msg.Subject = $Subject
$msg.Body = $emailbody
$msg.From = $fromAddress


$mailer.send($msg)

Связанный контент