2014-10-30 29 views
0

发送电子邮件回复我使用PowerShell脚本使用发送电子邮件:使用PowerShell

$smtpClient = New-Object System.Net.Mail.SmtpClient 
$smtpClient.Host = 'smtp.gmail.com' 
$smtpClient.Port = 587 
$smtpClient.EnableSsl = $true 
$smtpClient.Credentials = [Net.NetworkCredential](Get-Credential GmailUserID) 
$smtpClient.Send($emailMsg) 

其中$ emailMsg是设置为:

$emailMsg = New-Object System.Net.Mail.MailMessage 
$emailMsg.From = $YourEmail 
$emailMsg.To.Add($RecipientEmail) 
$emailMsg.Subject = $Subject 
$emailMsg.Body = $body 
$emailMsg.Attachments.Add("$PSScriptRoot\$AttachmentFile") 

我真正需要的是能够做到发送了一封后续电子邮件,它将回复此初始邮件,是否有通过PowerShell执行此操作的方法?

+0

你能解释一下这个好一点吗?从哪里回复? – arco444 2014-10-30 15:00:51

+0

@ arco444对不起,迟到的回复在其他工作中遇到了麻烦。基本上,我想发送多封电子邮件以提供有关操作进度的信息,我希望随后的电子邮件(从相同地址发送)显示为对发送的初始电子邮件的回复。但我不确定这是否可能。我试着简单地使用“Re:$ Subject”作为主题,但是使用gmail它并没有作为回复。 – 2014-11-04 18:21:41

+0

有关gmail消息线程的一些信息:http://webapps.stackexchange.com/questions/965/how-does-gmail-decide-to-thread-email-messages – 2015-05-07 22:52:56

回答

0

您需要为您的SMTP邮件添加一个In-Reply-To标头。标题的值应该与您希望回复的消息的Message-ID标题的值相同。

$emailMsg.Headers.Add("In-Reply-To", "<[email protected]>") 

更多信息请登录Cognitive Buffet