powershell - 回复电子邮件 powershell
问题描述
您好 StackOverflow 的社区,我将询问方法“.reply()”。这是我正在尝试的代码:
function Unread ($correo) {
if(($correo -eq $null) -or ($correo.Unread.ToString() -like "False")){
$Noleido = $false
}else{
$Noleido = $true
return $Noleido
}
}
$body = "Bla bla bla"
$firma = "I am here"
#$cuerpo = "A test ps"
$subject = "Re: automated reply"
$Outlook = New-Object -comObject Outlook.Application
$OutlookFolders = $Outlook.Session.Folders.Item($buzon1).Folders
#Map la bandeja de entrada.
$bandeja_de_entrada=$OutlookFolders.Item("INBOX_FOLDER")
#Creamos el objeto que hace referencia a la bandeja de entrada y los mensajes que contiene.
$all_mail=$bandeja_de_entrada.Items
foreach ($mail in $all_mail){
$flag1 = Unread($mail)
if($flag1 -eq $true){
#$mail.to = ""
$mail.body =" $cuerpo" +"$firma"
$mail.subject = $subject
$mail.reply()
}
}
不要发送电子邮件。
它在答案中解决
解决方案
该方法reply
基于原始邮件创建预填充了必要属性的 MailItem。
如果将该reply
方法创建的 MailItem 保存到变量中,则可以使用该方法send
实际发送回复。
将您的脚本修改为如下所示可能会起作用。
$body = "Bla bla bla"
$firma = "I am here"
$subject = "A test ps"
$Outlook = New-Object -comObject Outlook.Application
$OutlookFolders = $Outlook.Session.Folders.Item($buzon1).Folders
#Map la bandeja de entrada.
$bandeja_de_entrada=$OutlookFolders.Item("INBOX_FOLDER")
#Creamos el objeto que hace referencia a la bandeja de entrada y los mensajes que contiene.
$all_mail=$bandeja_de_entrada.Items
foreach ($mail in $all_mail){
#$mail.to = ""
$reply = $mail.reply()
$reply.body = " $cuerpo $firma"
$reply.subject = $subject
$reply.send()
}
如果您想包含原始消息而不是覆盖它,您可以将$reply.body
-line 更改为这样的内容;
$reply.body = $reply.body + " $cuerpo $firma"
推荐阅读
- html - `float:left` 布局错误
- sql - SQL Server Group By聚合查询一对多关系
- eclipse - 如何在 ECLIPSE 中的所有 jsp 页面之上编写几行代码
- r - 向图例标签添加计数
- r - 如何在r中的一个数据框中使用多个条件
- python - 如何使用 __getitem__ 返回对象树中的对象?
- php - PHP 'exec' 命令不能与 'awk' 命令一起正常工作
- jquery - 基于选择值的jQuery验证规则
- django - Django 并行测试不创建数据库表
- php - 使用 Xampp 模拟的 Laravel 网站产生:找不到类“Memcached”