MAPI

        半年来一直在做Outlook插件的工作。个人觉得做MS Office的插件是吃力不讨好,主要难点是:Office出现crash时,原因很难定位(如果做一个独立的应用程序还好说,插件是以单个dll的形式来与Office交互的,出现core dump时,即使生成个dump文件,也没法找出崩溃的源头。)。心想:如果MS Office是开源的,那就好办的多了。

        除了插件crash的问题排查困难之外,开发的Outlook插件还用到了MAPI。这是另外一个让人云里雾里的东西(主要是MS的实现不开源,要是开源,一切都会好起来)。MAPI,全称“Messaging Application Programming Interface”。下面是我在网上找到的说的比较清楚的资料:

        1)Jason Nelson. "Understanding how Outlook, CDO, MAPI and Providers work together"。一篇非常好的文章,讲清楚了MAPI Application(MS Outlook属于MAPI Application)、CDO、MAPI runtime、以及Service Provider之间的关系。可惜这样的文章太少了。

        2)Irving De La Cruz, Irving Thaler. "Inside MAPI"。一部非常好的书。虽然我没有仔细看过,但看了下目录,里面讲MAPI的架构还是很清晰的,如果能结合上Outlook来举例讲解那就更好了。其实这是微软出版的书,发觉微软老是干这样的事:推出一些云里雾里的技术,然后由其内部工程师著书立说慢慢透露其细枝末节,吊人胃口,直到没有胃口。

        3)SGriffin的MAPI博客里也有很好的资料。他是MFCMAPI.exe的作者,同时也是微软的MSDN上的著稿人。

        4)MFCMAPI。这是一个MAPI Application的例子,有助于了解MAPI的使用。

        越是深入微软的技术(如COM、OLE、ATL、MAPI),就越有这样的感受:要是这一切都是开源的,那该多好啊;我们就能节省很多的时间,对着这些知识的隐晦角落时就不用玩你猜、你猜、你猜猜猜的游戏了。当然,要是Windows操作系统有朝一日也开源,那这些技术应该会更受开发者欢迎的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值