一些帮助请(函数sendEmail)

时间:2013-10-14 06:59:58

标签: powershell

有些人可以帮我解决这个问题, 我无法理解我需要在哪里放置我的邮件参数,smtp服务器等等。

这是脚本:

Function sendEmail 
{ param($from,$to,$subject,$smtphost,$htmlFileName) 
$body = Get-Content $htmlFileName 
$smtp= New-Object System.Net.Mail.SmtpClient $smtphost 
$msg = New-Object System.Net.Mail.MailMessage $from, $to, $subject, $body 
$msg.isBodyhtml = $true 
$smtp.send($msg) 

} 

2 个答案:

答案 0 :(得分:2)

除非您仍在使用PowerShell v1(您不应该使用),否则请使用Send-MailMessage代替System.Net.Mail.SmtpClientSystem.Net.Mail.MailMessage

Send-MailMessage -SmtpServer $smtphost `
  -To $to `
  -From $from `
  -Subject $subject `
  -Body (Get-Content $htmlFileName | Out-String) `
  -BodyAsHtml

答案 1 :(得分:0)

我不完全确定我正确理解你,但我认为你在实际使用你的功能时正在努力,因为那个脚本很好。

正如已经指出的那样,Send-MailMessage比.net的东西更容易使用。

如果你想从shell调用你的函数,首先你必须导入它

Import-Module sendemail.ps1

然后你可以通过填写参数从shell中调用它。