Outlook 所支持的邮件规则相当有用,我们经常需要针对某些特征的邮件做特殊的处理。例如将其移动到某个特定文件夹,或者删除它等等。

Outlook所支持的邮件规则主要两大类:收到邮件时和发送邮件时

一个邮件规则的三大要素

1. 条件(Condition)

2. 动作(Action)

3. 例外(Exception)

下面是一个简单的范例,这是通过Visual Studio 2008所编写的Outlook 2007 外接程序(Add -in )。这个小程序演示了如何添加一个规则,该规则在收到邮件时检查所有发件人,如果发件人是chenxizhang@gmail.com,那么将执行一个动作(播放一个声音)。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Outlook = Microsoft.Office.Interop.Outlook;
using Office = Microsoft.Office.Core;

namespace TestMailRule
{
    public partial class ThisAddIn
    {
        private void ThisAddIn_Startup(object sender, System.EventArgs e)
        {
            Outlook.Rules rules = Application.Session.DefaultStore.GetRules();
            if (rules["测试"] == null)
            {
                Outlook.Rule rule = rules.Create("测试", Outlook.OlRuleType.olRuleReceive);
                rule.Conditions.From.Recipients.Add("chenxizhang@gmail.com");
                rule.Conditions.From.Enabled = true;
                rule.Conditions.From.Recipients.ResolveAll();
                rule.Actions.PlaySound.FilePath = @"E:\My Documents\LOADER.WAV";

rule.Actions.PlaySound.Enabled = true;
                rule.Enabled = true;
                rules.Save(true);
            }
        }

private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
        {
        }

#region VSTO 生成的代码

/// <summary>
        /// 设计器支持所需的方法 - 不要
        /// 使用代码编辑器修改此方法的内容。
        /// </summary>
        private void InternalStartup()
        {
            this.Startup += new System.EventHandler(ThisAddIn_Startup);
            this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
        }
        #endregion
    }
}

看起来不错,对吧?但事实上你完全可以通过手工做出上述的效果。

还有一个难题没有解决:如何自定义动作,并将其部署到Outlook里面去?

最新文章

  1. K910 升级Android 4.4.2可用的Google Service Framework
  2. CHAP算法C++实现
  3. Cocos2d-x 学习资料推荐
  4. artDialog ( v 6.0.2 ) content 参数引入页面 html 内容
  5. Linux下访问其他机器的共享
  6. CAPI3 HTTP文件服务器搭建(共享目录版)
  7. struts2漏洞原理及解决办法
  8. ASP.Net MVC4 登录
  9. CXF之八 RESTFul服务
  10. 腾讯sdk配置
  11. MongoDB与PHP的添加、修改、查询、删除
  12. 关于vnc连接闪退问题的设置
  13. [蘑菇街] 搜索、算法团队招募牛人啦-年底了走过路过不要错过 - V2EX
  14. Url Rewrite IIS 配置
  15. Converting between IEEE 754 and Float (Format related
  16. 前端必备PS技巧
  17. 联发科Helio P90,MT6779VWB芯片处理器
  18. PHP防盗链的基本思想&amp;&amp;防盗链的设置方法
  19. abstract、virtual、sealed、 interface、struct 基础知识整理
  20. bzoj4337: BJOI2015 树的同构 树哈希判同构

热门文章

  1. ASP.NET MVC5+EF6+EasyUI 后台管理系统-分配角色给用户
  2. 学习Sass 的基本语法规则[Sass和compass学习笔记]
  3. table常用功能总结
  4. 初探bootstarp
  5. mysql导入sql文件
  6. 清除浮动1-使用:after 伪元素
  7. solr5.5教程-solr.home 配置
  8. SQLite3的使用(用到了dll)good
  9. VC++ 在两个文件互相包含时会出现的错误
  10. 谷歌Dremel即时数据分析解决方案
  11. 漂亮的PHP验证码
  12. 2018-2019网络对抗技术 20165220 Exp4 恶意代码分析
  13. MySQL MyISAM引擎转换为InnoDB操作记录
  14. spark streaming 整合kafka(二)
  15. rest_framework 之视图
  16. SpringBoot的Profile文件
  17. Codeforces 623B Array GCD
  18. one by one 项目 part 3
  19. ZT 安卓手机的安全性 prepare for Q
  20. 第一周冲刺评论总结&amp;&amp;针对评论总结的改进