2014-02-12 22 views
0

这里是PowerShell脚本代码我使用PowerShell的 - 发送邮件脚本抛出错误

$SmtpClient = New-Object system.net.mail.smtpClient; 
$mailmessage = New-Object system.net.mail.mailmessage; 
$SmtpClient.Host = "exchange server name"; 
$SmtpClient.Credentials = New-Object System.Net.NetworkCredential("User name", "password"); 
$mailmessage.from = ("[email protected]"); 
$mailmessage.To.add("[email protected]"); 
$mailmessage.Subject = “Message”; 
$mailmessage.Body = “Body”; 
$smtpclient.Send($mailmessage); 

以下是错误我得到

异常调用“发送”与“1”的说法( s):“发送邮件失败。” 在C:\ Users \ user1 \ Desktop \ sendmailPS.ps1:9 char:17 + $ smtpclient.Send < < < <($ mailmessage); + CategoryInfo:NotSpecified:(:) [],MethodInvocationExcept离子 + FullyQualifiedErrorId:DotNetMethodException

任何帮助事先赞赏和感谢

+0

它可能是Exchange服务器上的连接器权限。你确定服务器会做smtp中继吗? – mjolinor

回答

2

除非你有必要保持使用PowerShell 1.0的兼容性,使用改为send-mailmessage。为了便于阅读,添加了Linebreaks。

send-mailmessage -smtphost your.smtp.host -from [email protected] -to [email protected] ` 
-subject "message" -body "body" ` 
-Credential (New-Object -TypeName System.Management.Automation.PSCredential` 
    -ArgumentList "user name" (ConvertTo-SecureString -String "password" -AsPlainText -Force)) 
+0

感谢您的支持!不知道我可以使用邮件消息,好多了。 – ricky89

相关问题