2013-01-16 86 views
0

我有一个插件,可以在Outlook中与我们的协作系统同步只读共享日历。我需要确保用户不能在这些只读日历中删除任何约会。可以将事件处理程序附加到Outlook中的任何约会(这是可行的),但它不适用于周期性事件。重现模式中的每一次出现都是Outlook中的一个单独对象,并且该应用程序必须为每个这样的对象附加一个事件处理程序。如果重现模式是无止境的(这种约会非常流行),那么应用程序应该附加无限数量的事件处理程序。阻止Outlook删除周期性事件

是否有可能同时附加一个事件处理程序,以某种分组对象中的(如果这样的实体存在)的所有事件,或者是有解决我的任务的任何其他方法?

回答

1

当定期约会的实例被删除时,主约会将被修改。您可以通过订阅AppointmentItem.Write事件来拦截该更改,其中具有Cancel参数。

+0

我向开发商核实。实际上,这是我们尝试的第一件事(订阅主约会的AppointmentItem.Write)。在重复模式中删除实例时,它不会被触发。 – Alex

+0

BeforeDelete事件是否触发? –

+0

不,我们的测试只在主约会本身被删除时触发,而不是任何属于它的重复。 – Alex