我正在使用nant发送邮件,并且工作正常-类似于

<mail
    from="Test@b.c"
    tolist="A@b.c"
    subject="Test"
    mailhost="myhost.mydomain.com"
    isbodyhtml="true"
    message= "${Test}">
</mail>

我不必使用任何身份验证。

现在,当使用Powershell时,似乎我不得不使用身份验证-这样的操作将失败:
Send-MailMessage -To $to -From $from -Subject "Test" –Body “Test (body) -SmtpServer "myhost.mydomain.com"

我会收到以下消息:
Send-MailMessage : No credentials are available in the security package

如果服务器支持,我是否缺少某种无需指定凭据即可发送邮件的方式?

编辑:
我也尝试过在这里发送匿名邮件的答案,但它只是超时:
send anonymous mails using powershell

最佳答案

使用Powershell v1方法发送邮件无需验证即可正常工作,如here所示

我的Powershell版本是5,但是除非有人有其他想法,否则显然这是可行的方法。

$smtpServer = "ho-ex2010-caht1.exchangeserverpro.net"
$smtpFrom = "reports@exchangeserverpro.net"
$smtpTo = $to
$messageSubject = $subject
$messageBody = $body

$smtp = New-Object Net.Mail.SmtpClient($smtpServer)
$smtp.Send($smtpFrom,$smtpTo,$messagesubject,$messagebody)

07-24 09:44
查看更多