在代理后使用 Powershell 发送邮件

8

我正在尝试使用Powershell和GMail发送电子邮件,目前为止,我使用了这个函数成功地完成了邮件发送:

function sendMail{
    $EmailFrom = “me@gmail.com”
    $EmailTo = “info@company.com”
    $Subject = “Subject”
    $Body = “Hellow”
    $SMTPServer = “smtp.gmail.com”
    $SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587)
    $SMTPClient.EnableSsl = $true
    $SMTPClient.Credentials = New-Object System.Net.NetworkCredential(“username”, “password”);
    $SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)

    Write-Host "All done!"
}

如果我们的网络中使用了代理,那么这个脚本将无法正常工作。我应该如何修改这个函数,以便能够在使用代理的情况下发送电子邮件?
换句话说,我如何通过外部SMTP服务器连接到代理并发送电子邮件。


兄弟,你解决这个问题了吗?我也遇到了同样的问题。 - ash
1个回答

1
HTTP和HTTPS代理不允许SMTP连接通过。如果您使用SOCKS代理,则可以通过它隧道所有TCP连接,包括使用TCP的SMTP连接。然后,您可以使用WideCap将所有应用程序socksify,或者您可以使用支持代理的Component pro .Net SMTP client

顺便提一下,请查看 cheated.by.safabyte.net,该网站显示 Component Pro 可能是盗版软件的最新版本。谢谢。 - iokevins

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接