代码之家  ›  专栏  ›  技术社区  ›  Deepak N

挂接到Outlook联系人的发送/接收同步事件

  •  1
  • Deepak N  · 技术社区  · 17 年前

    SendAndReceive

    Application.ActiveExplorer().SyncObjects.ForEach
    {
       SyncObject.SyncEnd += \\Do something
    }
    

    4 回复  |  直到 14 年前
        1
  •  2
  •   Deepak N    17 年前

    我试过了

    Application.ActiveExplorer().SyncObjects.AppFolders.SyncEnd += \\EventHandler
    

    此选项用于发送/接收所有默认文件夹。。

        2
  •  0
  •   Cohen    17 年前

    我的第一个想法(我认为你也在同一条轨道上)是检查发送/接收事件,也许从中收集一些物品或类似的东西,但没有这样的东西。(如文中所述) this forum post )

    我的第二条路来自 following article :我可以注册 Item_Add Item_Change Item_Removed )文件夹事件(也由发送-接收所做的更改触发):

    一些代码:

    // Get the folder calendar folder and subscribe to the events.
    private void ThisAddIn_Startup(object sender, System.EventArgs e)
    {
        Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar).Items.ItemAdd += new Microsoft.Office.Interop.Outlook.ItemsEvents_ItemAddEventHandler(Items_ItemAdd);
        Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar).Items.ItemChange += new Microsoft.Office.Interop.Outlook.ItemsEvents_ItemChangeEventHandler(Items_ItemChange);
    }
    
    // Do something with it.
    void Items_ItemAdd(object Item)
    {
        logItem(Item, "Add");
    }
    void logItem(object Item, string Action)
    {
    
        Outlook.AppointmentItem item = Item as Outlook.AppointmentItem;
    
        File.AppendAllText(@"e:\log.txt", string.Format("Item {0}: {1}", Action, Item));
    
        if (item != null)
        {
            File.AppendAllText(@"e:\log.txt", " - Appointment: " + item.Subject);
        }
    }
    
        3
  •  0
  •   Scott Baker    11 年前

    // hook up the event
    this.Application.ItemSend += ThisApplication_SentMail;
    

    internal void ThisApplication_SentMail(object item, ref bool cancel)
    {
        Outlook.ContactItem contactItem = item as Outlook.ContactItem;
    
        // mail message is not a ContactItem, so exit.
        if (contactItem == null) return;
    
        // do  whatever you need to here
    
     }
    
    推荐文章