使用Powershell编辑电子邮件并保留HTML格式

时间:2019-01-23 04:02:04

标签: powershell

嗨,我正在尝试使用具有某些图片和颜色的powershell编辑HTML电子邮件模板。 我需要编辑和替换电子邮件中的某些内容,并保留html正文。当我尝试以下脚本时,它将转换为文本格式

$file= 'FILE PATH '
$outlook= New-Object -ComObject outlook.application
$msg= $outlook.createitemfromtemplate($file)
$msg.body= $msg.body -replace "December\d*", "TEST$a"
$msg.saveas($file)

2 个答案:

答案 0 :(得分:0)

您需要使用HTMLBody而不是主体。因为您告诉它在电子邮件中使用平面文本而不是HTML。希望这会有所帮助。

$file= 'C:\Temp\template.msg'
$outlook= New-Object -ComObject outlook.application
$msg= $outlook.createitemfromtemplate($file)
$msg.HTMLbody = $msg.HTMLbody.Replace("color2", "color")
$msg.saveas($file)
#$file | ConvertTo-Html #if needed

测试场景:

Before

代码已运行:

Code

之后:

After

答案 1 :(得分:0)

在替换我想要的 html 正文部分后,我遇到了与使用 $mail.Save() 相同的问题,但一切正常。 发送前没有保存,我收到的是短信而不是 html。