2014-12-02 77 views
-1

所有的Outlook COM加载项:Application_NewMail不被解雇

在我的Outlook 3种不同的邮箱ID,我有configured.i给在命令栏按钮,以便通过点击按钮,打开它的形式有3邮件标识名称以及单选按钮。 无论单选按钮,我已选择收件箱邮件,我需要转换为PDF格式并存储在物理位置....它正在为单个邮件ID,但不适用于多个。

注意: - Outlook 2010(Application_NewMail)在每个邮件ID中触发,但是当我尝试到Office 2007时它不会触发该事件。

plz帮助我....

回答

0

这里是MSDN的NEWMAIL事件应用类的规定:

的NEWMAIL事件触发,当新邮件到达收件箱并在客户端规则处理发生之前。如果要处理收件箱中的项目,请考虑在收件箱中的项目集合上使用ItemAdd事件。 ItemAdd事件传递添加到文件夹的每个项目的引用。

当用户处于离线模式时,NewMail事件不会触发。

您可以改为处理NewMailEx

Outlook NewMail event unleashed: the challenge (NewMail, NewMailEx, ItemAdd)系列文章描述了处理新邮件事件的所有可能方法。

+0

Item_Add事件不适用于大量的项目,16项以上的任何项目和事件都不会被提出。 – user3400961 2014-12-02 10:56:26

+0

是的,你是对的。使用计时器检查新电子邮件的最可靠方法。请阅读最后一系列文章(全部)。 – 2014-12-02 10:59:51

0

您是否可以在OutlookSpy(单击OutlookSpy功能区上的应用程序按钮,转到事件选项卡,检查窗口底部的日志)中看到事件触发?

另请注意,MAPI事件仅用于UI用途。你不应该使用它们进行任何类型的同步。您可以使用事件作为提示,您必须尽早运行同步而不是稍后运行同步,但它不应该是您唯一的同步机制。

Exchange公开了Outlook本身用于将OST文件与服务器同步的增量同步同步(ICS)API,但只能从扩展MAPI(C++或Delphi)访问。如果使用Redemption是一个选项,它会暴露RDOFolderSynchronizer对象。