使用PowerShell发送电子邮件Send-MailMessage -From 'Some person <some.Person@company.com>
Outlook将以Some Person <some.person@company.com>
格式显示发件人,但当使用Outlook发送电子邮件时,发件人只显示为Some Person
< / p>
有没有办法让Send-MailMessage
cmdlet格式化邮件消息,以便Outlook只显示名称而不显示名称+电子邮件地址?
搜索此主题可以使用.net
返回大量“如何使用Send-MailMessage”或答案,但并未真正直接解决此问题。
答案 0 :(得分:3)
MailAddress
类有一个DisplayName
属性,您可以用它来覆盖它。
不幸的是,Send-MailMessage
只接受一个字符串作为-From
参数
尝试手动使用SmtpClient
class,然后使用this MailAddress
constructor覆盖发件人地址的显示名称:
# Create message, add From mailaddress with custom display name
$Message = New-Object System.Net.Mail.MailMessage
$Message.From = New-Object System.Net.Mail.MailAddress 'some.Person@company.com','Some Person'
$Message.To.Add('recipient@company.com')
$Message.Subject = 'Exciting email!'
$Message.Body = @'
Hi Recipient
Check my cool display name in Outlook!
Regards
Some Person
'@
# Send using SmtpClient
$SmtpClient = New-Object System.Net.Mail.SmtpClient 'mailserver.fqdn'
$SmtpClient.Send($Message)