【问题标题】:Issue sending SMTP mail from VMWorkstation using Powershell使用 Powershell 从 VMWorkstation 发送 SMTP 邮件的问题
【发布时间】:2013-08-15 02:50:41
【问题描述】:

我有以下脚本,用于在运行 PowerShell 程序时发送电子邮件,它通常工作得非常好:

$msg = New-Object System.Net.Mail.MailMessage
        $msg.From = $from
        $msg.To.Add($to)
        $msg.Subject = $subject
        $msg.Body    = $html
        $msg.IsBodyHtml = $true

        $smtp = New-Object System.Net.Mail.SmtpClient($server)
        $smtp.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials
        try
        {
            $smtp.Send($msg)
            Write-Host "Email sent to $to without error"        
        } 
        catch 
        {
            $retryCount++           
            Write-Warning "Email failed to send. $_.Exception.Message" 
                     }

问题是我已经开始在我刚刚设置的 VMWorkstation 机器上使用此脚本,此时我无法发送电子邮件。这是我得到的错误:

WARNING: Email failed to send. Exception calling "Send" with "1" argument(s): "The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.1 Client was not authent
icated".Exception.Message

我相信我收到此错误是因为我使用:

$smtp.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials

是这样吗?如果是这样,有没有办法可以从我的虚拟机中提取我的凭据?我正在使用桥接网络,所以我不知道为什么我无法通过该呼叫访问它们。我还更改了我公司网络的所有域权限。

任何见解都会有所帮助。

【问题讨论】:

    标签: .net powershell smtp virtualization vmware-workstation


    【解决方案1】:

    如果您使用的是 PowerShell v2 或更高版本(并且应该使用),请改用 Send-MailMessage

    Send-MailMessage -from $from -to $to -subject $subject -body $html -BodyAsHTML -smtphost $server -credential $(Get-Credential)
    

    系统将提示您输入 SMTP 服务器的凭据。如果是你反复需要的东西,你可以在脚本的开头提示用户并存储它:

    $cred = Get-Credential
    

    然后使用-credential $cred 代替-credential $(Get-Credential)

    如果您正在运行的系统已加入您的域并且您使用域帐户登录,您应该能够跳过-credential 参数,因为它将默认为当前用户(您)。

    【讨论】:

      【解决方案2】:

      原来我遇到的问题是由于虚拟机没有连接到公司域。加入企业域解决了这个问题。

      【讨论】:

        猜你喜欢
        • 2021-05-08
        • 1970-01-01
        • 2023-03-19
        • 2021-10-26
        • 1970-01-01
        • 1970-01-01
        • 2010-09-09
        • 2011-09-09
        • 2018-04-13
        相关资源
        最近更新 更多