我想从 PowerShell 发送电子邮件,
所以我使用这个命令:
$EmailFrom = "[email protected] /cdn-cgi/l/email-protection"
$EmailTo = "[email protected] /cdn-cgi/l/email-protection"
$Subject = "today date"
$Body = "TODAY SYSTEM DATE=01/04/2016 SYSTEM TIME=11:32:05.50"
$SMTPServer = "smtp.mail.yahoo.com"
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587)
$SMTPClient.EnableSsl = $true
$SMTPClient.Credentials = New-Object
System.Net.NetworkCredential("[email protected] /cdn-cgi/l/email-protection", "password")
$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)
此命令不适用于 Yahoo 邮件或 Outlook 邮件,但适用于我的 Gmail。
我做错了什么吗?
以下代码片段对我来说确实有效:
$Username = "MyUserName";
$Password = "MyPassword";
$path = "C:\attachment.txt";
function Send-ToEmail([string]$email, [string]$attachmentpath){
$message = new-object Net.Mail.MailMessage;
$message.From = "[email protected] /cdn-cgi/l/email-protection";
$message.To.Add($email);
$message.Subject = "subject text here...";
$message.Body = "body text here...";
$attachment = New-Object Net.Mail.Attachment($attachmentpath);
$message.Attachments.Add($attachment);
$smtp = new-object Net.Mail.SmtpClient("smtp.gmail.com", "587");
$smtp.EnableSSL = $true;
$smtp.Credentials = New-Object System.Net.NetworkCredential($Username, $Password);
$smtp.send($message);
write-host "Mail Sent" ;
$attachment.Dispose();
}
Send-ToEmail -email "[email protected] /cdn-cgi/l/email-protection" -attachmentpath $path;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)