You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell中Send-MailMessage发送邮件时商标符号变问号的解决问询

解决PowerShell Send-MailMessage特殊符号显示为问号的问题

问题根源是邮件编码不匹配:Send-MailMessage默认编码无法正确处理™、®这类Unicode特殊符号,导致传输过程中符号被替换为问号。

以下是可行的解决方法:

方法一:指定UTF-8编码并在HTML中声明字符集

修改脚本,同时设置SMTP传输编码和HTML内容的字符集声明:

$body = "<meta charset='UTF-8'><b>A program™ has sent this email® . </b>"
Send-MailMessage -SmtpServer mail.com -Subject "test" -BodyAsHtml $body -Encoding UTF8
  • <meta charset='UTF-8'>:告诉邮件客户端用UTF-8解析HTML内容
  • -Encoding UTF8:让Send-MailMessage以UTF-8编码发送邮件内容,确保特殊符号在传输中不丢失

方法二:处理主题中的特殊符号(如果需要)

如果邮件主题中也包含特殊符号,同样需要指定编码:

$subject = "Test™ 邮件主题"
$body = "<meta charset='UTF-8'><b>A program™ has sent this email® . </b>"
Send-MailMessage -SmtpServer mail.com -Subject $subject -BodyAsHtml $body -Encoding UTF8

内容的提问来源于stack exchange,提问作者Ko Nayaki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 10:32:02