Powershell电子邮件添加抄送字段
我在这里找到了这段代码,用于使用Powershell发送电子邮件和附件,非常适合,但我正在尝试将电子邮件抄送添加到其中。我想不出来。如果可以的话,请帮我一把。我尝试了各种方法添加$message.Cc.Add(“email_地址”);但是它不能工作。多谢各位Powershell电子邮件添加抄送字段,powershell,Powershell,我在这里找到了这段代码,用于使用Powershell发送电子邮件和附件,非常适合,但我正在尝试将电子邮件抄送添加到其中。我想不出来。如果可以的话,请帮我一把。我尝试了各种方法添加$message.Cc.Add(“email_地址”);但是它不能工作。多谢各位 $Username = "MyUserName"; $Password = "MyPassword"; $path = "C:\attachment.txt"; function Send-ToEmail([string]$email,
$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;
这对我有用。请试一试
$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
“不能让它工作”是什么意思
$message.Cc.Add()
似乎是正确的调用。为什么不使用Send-MailMessage
?Send-MailMessage,我不知道我在Stackoverflow上找到了上面的代码,它工作得很好。我不会在计算机运行时,所以我需要一个脚本,其中包含smtp服务器的用户名和密码,它有附件。有什么不同吗?@Paxz我会再试一次。也许是我打错了什么的好的谢谢。我将把我的答案放在底部。计算机运行时我不在,因此我需要一个包含smtp服务器用户名和密码的脚本。您需要处理所有新对象还是仅处理附件,您怎么知道?
$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;