iT邦幫忙

2

Password Expiry Email Notification by PowerShell 中文通知信亂碼之解法

緣由,因為使用者當AD + EXCHANGE 針對快要逾期的密碼,需要發郵件通知使用者即時變更密碼。

藉由這一個問題,我利用關鍵字於 PowerShell 網站中找到了一個程式 Password Expiry Email Notification 可以運用 。下載使用後發現通知信的中文會出現 '???' 的亂碼。

藉由Google大神搜尋 Power Shell 中文亂碼,得到結論是加入 $OutputEncoding = New-Object -typename System.Text.UTF8Encoding 或是 $Encoding ([System.Text.Encoding]::UTF8) ,結果不能解決問題。

最後,曙光一線 找到這一個連結 中間有介紹到他改寫的程式能發出中文通知信,我詳讀一下他的語法,原來優 要於 PwoerShell 的程式 Send-Mailmessge 中加入 -Encoding ([System.Text.Encoding]::UTF8) 才可以啦!我真是竹本口木子。

也就是 Password Expiry Email Notification 範例程式要改成如下即可。(粗斜體字)

Send-Mailmessage -smtpServer $smtpServer -from $from -to $emailaddress -subject $subject -body $body -bodyasHTML -priority High -Encoding ([System.Text.Encoding]::UTF8)

文章同步於


尚未有邦友留言

立即登入留言