如何在Powershell电子邮件中添加多个文件作为附件

Varinder Verma

该代码用于发送带有一个文件附件的自动电子邮件。如何发送多个文件?

@ECHO OFF
SET GmailAccount=%~1
SET GmailPassword=%~2
SET Attachment=%~3
setlocal
set "date=%date%"
CALL :PowerShell
CD /D "%PowerShellDir%"
Powershell -ExecutionPolicy Bypass -Command "& '%PSScript%' '[email protected]' 'PasswordofEmail' 'D:\Abc.xls'"

EXIT

:PowerShell
SET PowerShellDir=C:\Windows\System32\WindowsPowerShell\v1.0
SET PSScript=%temp%\~tmpSendeMail.ps1
IF EXIST "%PSScript%" DEL /Q /F "%PSScript%"

ECHO $Username      = $args[0]>> "%PSScript%"
ECHO $EmailPassword = $args[1]>> "%PSScript%"
ECHO $Attachment    = $args[2]>> "%PSScript%"
ECHO                          >> "%PSScript%"
ECHO $Username    = $Username                 >> "%PSScript%"
ECHO $EmailTo     = "[email protected]" >> "%PSScript%"
ECHO $EmailFrom   = "[email protected]" >> "%PSScript%"
ECHO $Subject     = "Subject Name of the Email Text - %date%"           >> "%PSScript%"
ECHO $Body        = "Email body Text"              >> "%PSScript%"
ECHO $SMTPServer  = "smtp.gmail.com"          >> "%PSScript%"
ECHO $SMTPMessage = New-Object System.Net.Mail.MailMessage($EmailFrom, $EmailTo, $Subject, $Body) >> "%PSScript%"
ECHO $Attachment  = New-Object System.Net.Mail.Attachment($Attachment)                            >> "%PSScript%"
ECHO $SMTPMessage.Attachments.Add($Attachment)                                                    >> "%PSScript%"
ECHO $SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587)                               >> "%PSScript%"
ECHO $SMTPClient.EnableSsl = $true                                                                >> "%PSScript%"
ECHO $SMTPClient.Credentials = New-Object System.Net.NetworkCredential($Username, $EmailPassword) >> "%PSScript%"
ECHO $SMTPClient.Send($SMTPMessage)                                                               >> "%PSScript%"
GOTO :EOF
PAUSE
史蒂文

.Attachments是一个集合,因此只需创建另一个附件对象,然后.Add()再次运行方法以添加第二个附件对象,例如:

$Attachment2 = $args[3]
# ...
$Attachment2 = New-Object System.Net.Mail.Attachment($Attachment2)
# ...
$SMTPMessage.Attachments.Add($Attachment2)

顺便说一句,您可以使用cmdlet Send-MailMessage

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用GetBobContent获取多个文件并将其作为附件添加到Azure Logic应用中的电子邮件?

如何在Thunderbird中回复较新的电子邮件时添加旧电子邮件作为附件?

向电子邮件添加多个动态附件

如何在文本输入HTML中添加多个电子邮件地址

如何在 CodeIgniter 中添加多个图像作为附件而不是 Zip 文件夹

通过powershell将多个附件添加到带有txt文件路径的电子邮件中

我如何在React中将生成的csv文件作为电子邮件附件发送

如何在laravel中将Excel文件作为附件发送给电子邮件?

在Django中,如何保存已上传到内存中的文件作为电子邮件附件?

如何使用python在电子邮件中添加多个嵌入图像

如何使用SendGrid将文件作为附件附加到电子邮件中?

我们如何在android电子邮件中附加多个图像

如何在电子邮件中正确添加附件,特别是 IOS 中的 RTF?

如何在IOS中从电子邮件保存和获取CSV文件附件

在电子邮件附件中仅获取一个文件,而不是多个附件

Powershell电子邮件:如何在电子邮件正文中添加新行?

如何使用javax.mail.jar将文件名添加到电子邮件附件中的图像

需要帮助弄清楚如何在VB.NET中向电子邮件添加附件

如何在不下载到磁盘的情况下将附件添加到电子邮件中?

如何在Google App Engine通过SendGrid(使用Java)发送的电子邮件中添加附件?

使用mailR(send.mail)在电子邮件中添加多个表

如何使用Linux命令行将文件作为电子邮件附件发送?

如何使用mpack从命令行发送HTML文件作为电子邮件的附件?

在作为电子邮件附件发送之前如何检查文件是否可用

如何编写新的CSV文件并作为电子邮件附件发送

如何在 Jenkins 电子邮件通知中将诱惑或 html 报告作为附件发送

发送python电子邮件时添加excel文件附件

发送python电子邮件时添加excel文件附件

如何在Windows应用程序的电子邮件正文中附加多个图像?