Send-MailMessage不工作 [英] send-MailMessage not working

查看:9
本文介绍了Send-MailMessage不工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用PowerShell版本2中的send-MailMessagecmdlet,但它给我一个错误。

我尝试使用前面帖子中提到的所有选项,但没有帮助。

这是我正在使用的命令:

send-MailMessage -from "abc@gmail.com" -to "def@gmail.com" 
                 -subject "test" -body"test" -smtp "smtp.gmail.com" 

我收到一个错误:

Send-MailMessage:SMTP服务器需要安全连接或客户端未经过身份验证
必须先发出STARTTLS命令。L46sm12283804qgd.27-gsmtp
第:1字符:17
+Send-MailMessage<;<;-从"abc@gmail.com"发送到"def@gmail.com"-主题"TE
凭证ABC
+CategoryInfo:InvalidOperation:(System.Net.Mail.SmtpClient:SmtpClient)[se
离子
+FullyQualifiedErrorID:SmtpException,Microsoft.PowerShell.Commands.SendMailMessage

我尝试使用UseSsl= true,也通过提供凭据,但即使那样我也无法发送电子邮件。你能让我知道我在这里错过了什么吗?

SSL

为了使用Gmail您需要推荐答案,我不确定您是否可以使用Send-MailMessage尝试:

$emailSmtpServer = "smtp.gmail.com"
$emailSmtpServerPort = "587"
$emailSmtpUser = "yourlogin@gmail.com"
$emailSmtpPass = "yourPassword"

$emailMessage = New-Object System.Net.Mail.MailMessage
$emailMessage.From = "yourlogin@gmail.com"
$emailMessage.To.Add("YourSendTo@mail.com")
$emailMessage.Subject = "Small mail for a friend"
$emailMessage.IsBodyHtml = $true
$emailMessage.Body = @"
<p><strong>Hello me</strong>.</p>
<p>It seems to work</p>
<p>JP</p>
"@

$SMTPClient = New-Object System.Net.Mail.SmtpClient( $emailSmtpServer , $emailSmtpServerPort )
$SMTPClient.EnableSsl = $true
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential( $emailSmtpUser , $emailSmtpPass );

$SMTPClient.Send( $emailMessage )

编辑:

要使用邮件附件,请查看Sytem.Net.Mail.MailMessage文档。您需要首先创建Attachment,然后将其添加到MailMessageAttacments集合。

这篇关于Send-MailMessage不工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆