首页 > 代码库 > powershell 通过SMTP发送邮件
powershell 通过SMTP发送邮件
一直以来就用.net的方式发送邮件。由于powershell自带的方式用起来easy出错。且比較简单,近期看到一些人也反应使用中遇到麻烦。
#定义函数 function sendmail($mailaddr,$body){ $msg=New-Object System.Net.Mail.MailMessage $msg.To.Add($mailaddr) $msg.From = New-Object System.Net.Mail.MailAddress("发送邮件的账号@xxx.com", "显示名",[system.Text.Encoding]::GetEncoding("GB2312")) $msg.Subject = "标题" $msg.SubjectEncoding = [system.Text.Encoding]::GetEncoding("GB2312") $msg.Body =$body #$Attachments=New-Object System.Net.Mail.Attachment("D:\Documents\xxxx.zip")#创建附件 #$msg.Attachments.add($Attachments) #加入附件。英文名可多个。中文名就仅仅能带一个。 $msg.BodyEncoding = [system.Text.Encoding]::GetEncoding("GB2312") $msg.IsBodyHtml = $false#发送html格式邮件 #$msg.Priority = [System.Net.Mail.MailPriority]::High $client = New-Object System.Net.Mail.SmtpClient("SMTP地址") $client.UseDefaultCredentials = $false $client.Credentials=New-Object System.Net.NetworkCredential("账号@xxx.com", "password") try {$client.Send($msg)} catch [Exception]{$($_.Exception.Message) $mailaddr } } #发送邮件 sendmail $mailaddr $body
??
powershell 通过SMTP发送邮件
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。