Электронная почта Powershell добавить поле CC - PullRequest
0 голосов
/ 20 декабря 2018

Я нашел этот код здесь для отправки электронных писем и вложений с помощью Powershell, и он прекрасно работает для этого, но я пытаюсь добавить к нему электронную почту.Я не могу понять это.Пожалуйста, дайте мне руку, если можете.Я пробовал разные способы добавления $ message.Cc.Add ("email_address");но не могу заставить его работать.Спасибо.

$Username = "MyUserName";
$Password = "MyPassword";
$path = "C:\attachment.txt";

function Send-ToEmail([string]$email, [string]$attachmentpath){

    $message = new-object Net.Mail.MailMessage;
    $message.From = "YourName@gmail.com";
    $message.To.Add($email);
    $message.Subject = "subject text here...";
    $message.Body = "body text here...";
    $attachment = New-Object Net.Mail.Attachment($attachmentpath);
    $message.Attachments.Add($attachment);

    $smtp = new-object Net.Mail.SmtpClient("smtp.gmail.com", "587");
    $smtp.EnableSSL = $true;
    $smtp.Credentials = New-Object System.Net.NetworkCredential($Username, $Password);
    $smtp.send($message);
    write-host "Mail Sent" ; 
    $attachment.Dispose();
 }
Send-ToEmail  -email "reciever@gmail.com" -attachmentpath $path;

Ответы [ 2 ]

0 голосов
/ 20 декабря 2018
$Username = "MyUserName";
$Password = "MyPassword";
$path = "C:\attachment.txt";

function Send-ToEmail([string]$email, [string]$emailCc, [string]$attachmentpath){

    $message = new-object Net.Mail.MailMessage;
    $message.From = "YourName@gmail.com";
    $message.To.Add($email);
    $message.Cc.Add($emailCc);
    $message.Subject = "subject text here...";
    $message.Body = "body text here...";
    $attachment = New-Object Net.Mail.Attachment($attachmentpath);
    $message.Attachments.Add($attachment);

    $smtp = new-object Net.Mail.SmtpClient("smtp.gmail.com", "587");
    $smtp.EnableSSL = $true;
    $smtp.Credentials = New-Object System.Net.NetworkCredential($Username, $Password);
    $smtp.send($message);
    write-host "Mail Sent" ; 
    $attachment.Dispose();
 }
Send-ToEmail  -email "reciever@gmail.com" -emailCc "CCreciever@gmail.com" -attachmentpath $path;
0 голосов
/ 20 декабря 2018

Это работает для меня.Пожалуйста, попробуйте.

$smtpCred = (Get-Credential) 
$ToAddress = 'to@outlook.com'
$CcAddress = 'cc@outlook.com'
$FromAddress = 'from@outlook.com'
$SmtpServer = 'smtp.office365.com'
$SmtpPort = '587'

$mailparam = @{
 To = $ToAddress
 Cc = $CcAddress
 From = $FromAddress
 Subject = 'Test Subject'
 Body = 'Test Body'
 SmtpServer = $SmtpServer
 Port = $SmtpPort
 Credential = $smtpCred
 }
Send-MailMessage @mailparam -UseSsl
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...