使用PowerShell脚步发送邮件
目录
二、 使用PowerShell脚步通过office 365发送邮件 3
三、 通过BAT脚步调用PowerShell脚步发送邮件 4
-
使用PowerShell脚步通过126发送邮件
-
代码详解
-
适用于场景:
-
126、163、QQ等邮箱。
-
不启用SSL,使用25端口
-
Password是授权码而不是邮箱密码
-
######################################################################
-
###########Define Variables########
-
$From = "发件人邮箱账号@126.com"
-
$To = "收件人邮箱账号@126.com"
-
$Subject = "邮件主题"
-
$Body = "邮件内容"
-
$smtpServer = "smtp.126.com"
-
$smtpPort = 25
-
$username = "发件人邮箱账号@126.com "
-
$password = "不是登录密码而是授权码,授权需要登录126去开启并生成"
-
###########邮件信息,包含发件人、收件人、主题和邮件内容########
-
$SMTPMessage = New-Object System.Net.Mail.MailMessage($From, $To, $Subject, $Body)
-
###########如需增加附件,请追加附件的路径########
-
$attachment = New-Object System.Net.Mail.Attachment("C:\log\CreationFRM.log")
-
$SMTPMessage.Attachments.Add($attachment)
-
###########SMTP服务器和端口########
-
$SMTPClient = New-Object Net.Mail.SmtpClient($smtpServer, $SmtpPort)
-
##########不启用SSL########
-
$SMTPClient.EnableSsl = $false
-
###########用户凭证########
-
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential($username, $password);
-
##########发送邮件########
-
$SMTPClient.Send($SMTPMessage)
-
###########Define Variables########
-
Powershell脚步
按提示更新脚步中的内容。
-
使用PowerShell脚步通过office 365发送邮件
-
代码详解
-
适用于场景:
-
office365等邮箱
-
启用SSL,使用587端口
-
Password就是邮箱密码不是授权码
-
######################################################################
-
###########Define Variables########
-
# 加密明文密码
-
$encryptedPassword = ConvertTo-SecureString "Wsry.2020" -AsPlainText -Force
-
# 通过加密的密码和账号创建邮件凭证
-
$mycreds = New-Object System.Management.Automation.PSCredential ("[email protected]", $encryptedPassword)
-
#邮件主题及内容
-
$Subject = "邮件主题Hello World"
-
$Body = "Hello World,<br/>This is your first e-mail<br/>Kind"
-
# Send the e-mail (should take less than 5 seconds)
-
Send-MailMessage -From "[email protected]" -To "[email protected]" -SmtpServer "smtp.office365.com" -Credential $mycreds -UseSsl $Subject -Port "587" -Body $Body
-
######################################################################
-
Powershell脚步
按提示更新脚步中的内容。
-
通过BAT脚步调用PowerShell脚步发送邮件
此BAT脚本需和PowerShell脚本在同一目录下,然后在BAT直接调用
PowerShell脚本就可以了。
-
######################################################################
-
@echo off
-
pushd %~dp0
-
powershell.exe -command ^
-
"& {set-executionpolicy Remotesigned -Scope Process; .'.\Sendmail.ps1'}"
-
popd
-
exit
-
######################################################################