0

我正在使用 interrop 来处理 Outlook 中的更改事件,因此当日历项目被更改时,我可以显示一条消息。问题是它触发了 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

有什么帮助吗?

4

2 回答 2

0

我遇到了同样的问题,但发现它与事件处理程序无关。多个事件的原因是,我安装了 HotMail 连接器,这将在同步时修改项目两次。

于 2014-01-13T13:54:48.780 回答
0

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

你如何设置事件处理程序?您是否可以设置事件挂钩 3 次?

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

于 2013-03-19T16:30:24.280 回答