我使用outlook-Redemption库在Powershell中使用Outlook。
我想做什么:我希望能够自动向地址发送确认邮件(现在静态地,以后可能是动态指定的)。
问题是我的邮件被服务器拒绝了,我希望你们能帮助我找出它为什么这样做,以及我应该怎样做/我应该做什么来成功发送邮件
出于隐私原因,我已经更改了一些名称,但我认为我用于此脚本的名称是合法的并且被服务器识别并且未被标记为垃圾邮件,这当然是安全的。
$mailSMTPServer = "smtp.<server>.com"
$cred = Get-Credential
$mailSMTPUser = $cred.GetNetworkCredential().username
$mailSMTPPass = $cred.GetNetworkCredential().password
$Message = New-Object System.Net.Mail.MailMessage
$Message.From = $routlook.CurrentUser.Name + "<"+ $routlook.CurrentUser.SMTPAddress+ ">"
$Message.To.Add("recipient@hotmail.com")
$Message.Subject = "Confirmation"
$Message.IsBodyHtml = $true
$Message.Body = "Thank you for the mail. I'm confirming I have recieved it"
$Message.Sender = $routlook.CurrentUser.SMTPAddress
$SMTPClient = New-Object System.Net.Mail.SmtpClient( $mailSMTPServer)
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential($mailSMTPUser, $mailSMTPPass)
$SMTPClient.Send($Message)
答案 0 :(得分:0)
如果您使用$Message.From = $routlook.CurrentUser.SMTPAddress
代替$Message.From = $routlook.CurrentUser.Name + "<"+ $routlook.CurrentUser.SMTPAddress+ ">"
吗?