.net Interop Outlook项目更改事件多次触发

时间:2013-03-19 15:24:33

标签: .net outlook ms-office office-pia

我正在使用interrop处理outlook中的更改事件,因此当calandar项目被查询时,我可以显示一条消息。问题是它会触发事件3次:s。

这是代码:

Private Sub mCalendarItems_ItemChangeEvent(ByVal Item As NetOffice.COMObject) Handles                     mCalendarItems.ItemChangeEvent
           Dim i As outlook.AppointmentItem = Nothing
           i = DirectCast(Item, outlook.AppointmentItem) 
        If i IsNot Nothing Then
            MessageBox.Show("Vous venez de modifier la tâche " & i.Subject)
            Application.DoEvents()
         End If
    i = Nothing End Sub

任何帮助?

2 个答案:

答案 0 :(得分:0)

如果项目被保存3次,则该事件将被触发3次。

如何设置事件处理程序?是否有可能将事件挂钩设置3次?

如果查看OutlookSpy中的文件夹,甚至会触发多少次?单击OutlookSpy工具栏上的“文件夹”按钮(“Outlook对象模型”组),选择“项”属性,然后单击“浏览”。在新项目窗口中,转到“事件”选项卡。修改约会,查看“事件”选项卡底部的“日志”框。

答案 1 :(得分:0)

我提出同样的问题,但发现它与事件处理程序无关。多个事件的原因是,我安装了HotMail Connector,这将在同步时修改Item两次。