email - 用于在 powershell 代码中从 gmail 帐户发送邮件的 SSL 凭据

标签 email powershell ssl

 $smtpServer = "smtp.gmail.com"
    $smtpport = "465"
    $username = "gmailid@gmail.com"
    $password = "gmailpassword"
    $smtp.EnableSSL = $true
    $smtp.credentials = New-Object System.Net.NetworkCredential($Username, $Password);
    $smtp = New-Object System.Net.Mail.SmtpClient($SMTPServer, $SMTPPort);
    $msg = New-Object Net.Mail.MailMessage
    $msg.To.Add($user)
    $msg.From = "gmailid@gmail.com"
    $msg.Subject = "Local Environment DiskSpace Report for $titledate"
    $msg.IsBodyHTML = $true
    $msg.Body = get-content $diskReport
    $smtp.Send($msg)
    $body = ""

这里的用户必须用其他方式定义,比如

    $users = "scondgmailid@gmail.com"

但是在运行 powershell bat 文件时出现错误:

    $smtp.EnableSSL = $true

    CategoryInfo : InvalidOperation:<:>[],RuntimeException 
    FullyQualifiedErrorId : PropertyNotFound 

同样的错误也发生在:

    $smtp.credentials = New-Object System.Net.NetworkCredential($Username, $Password);

请解决这个问题。

最佳答案

首先新建对象,然后设置属性:

$smtp = New-Object System.Net.Mail.SmtpClient($SMTPServer, $SMTPPort);

$smtp.EnableSSL = $true $smtp.credentials = New-Object System.Net.NetworkCredential($Username, $Password);
$smtp = New-Object System.Net.Mail.SmtpClient($SMTPServer, $SMTPPort);

关于email - 用于在 powershell 代码中从 gmail 帐户发送邮件的 SSL 凭据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31470666/

相关文章:

oop - Powershell 模块/脚本应该接受对象作为输入吗?

java - Java 6 中的密码证书命中不在 Java 7 中运行

ssl - Glassfish 3 : HTTPS request on HTTP listener hangs

ssl - 在 OpenSSL 中握手后查找 SSL 版本

email - Mutt 发送签名 Hook

php - 表单提交后使用 PHP 异步发送 HTML 电子邮件

Python 电子邮件 - 8 位 MIME 支持

asp.net - 如何在 SSIS SMTP 连接管理器中指定简单例份验证的凭据?

excel - 使用 PowerShell 在 Excel 文档中插入空行

powershell - write-host 和 write-output 的结果有什么区别?