Get Outlook Mail Message
参数说明:
1、MailFolder:必填参数,这里是需要读取邮件的目录,默认为inbox,若使用的中文版的outlook,可填写“收件箱”或者其他目录
2、Messages:读取邮件之后输出的变量,类型为List<MailMessage>,若需要对每封邮件进行处理,可以配合使用 For Each来遍历邮件数组,需要注意参数类型需要选择MailMessage,如下图:
3、Filter:筛选,可通过指定邮件时间、发件人等条件进行筛选,具体使用可参考如下示例:
(1)筛选收件人:
"[To] = 'Somebody'" --收件人等于Somebody
"[To] <> 'Somebody'" --收件人不等于Somebody
"[To] ='"+ Somebody + "'" --收件人为变量Somebody
(2)筛选邮件标题
"[Subject] = 'subject example'" --邮件标题等于subject example
"[Subject] <> 'subjext example'" --邮件标题不等于subject example
"[Subject] ='"+ Subject + "'" --邮件标题为变量Subject
"@SQL=" + """" + "urn:schemas:httpmail:subject" + """" + " like '%邮件标题%'" --模糊查询邮件标题
"@SQL=" + """" + "urn:schemas:httpmail:subject" + """" + " like '%" + Subject + "%'" --模糊查询邮件标题为变量subject
(3)筛选邮件时间
"[ReceivedTime] <= '" + Now.ToString + "'" --邮件时间小于等于当前时间
"[ReceivedTime] >= '" + Now.AddMinutes(-5).ToString + "'" --邮件时间为5分钟之前的
"[ReceivedTime]>='" + Now.AddDays(-1).ToShortDateString + "'" --前一天的邮件
说明:以上均为示例,具体根据实际场景试用不同的筛选条件,除以上筛选内容还可以筛选收件人、发件人等。
4、MarkAsRead:默认不勾选,若勾选上则说明,在读取未读邮件之后标记为已读,若不勾选则状态不变
5、OnlyUnreadMessages:默认为勾选状态,代表只读取未读邮件,若不勾选则表示任何状态都读取
6、Top:需要填写数字代表需要读取前多少封邮件
<拓展>
注意:这里的mail是指循环的变量,重点在后面.引用的东西,常用的如下:
mail.CC 邮件抄送人
mail.Subject 邮件标题
mail.Body 邮件内容
mail.Sender 邮件的发送者
mail.From 邮件的发送者
mail.To 邮件的接收者
mail.Headers("date") 邮件的接收时间
欢迎评论区补充!!!
若想要按照邮件的发送时间排序读取,可参考原创:
https://blog.csdn.net/hotkoko/article/details/113761699