MS Outlook 与 MySQL 之间的集成

Integration between MS Outlook and MySQL

有什么方法可以将 connect/Integrate MS Outlook 文件夹 MYSQL 单个 table 包括 Outlook 收件箱、已发送的项目以及其他任何内容用户创建的文件夹。

单个Table格式:

|Id|文件夹路径|主题|DisplayTo|DisplayCc|DateTimeSent|DateTimeReceived|IsRead|HasAttachments|Preview|

要求如下:

  1. 使用 MySQL
  2. 配置 MS Outlook
  3. 新收到的邮件进入收件箱,它应该被触发到 MySQL table 以上格式
  4. 无论何时发送外发邮件,它都应该被触发为 MySQL table 以上格式
  5. 连接应每 60 秒/可能的间隔检查一次

这些是该项目涉及的工具,MS Access 作为前端应用程序,MYSQL 作为数据库,MS Outlook 作为数据源。

提前致谢!!

您似乎需要为 Outlook 开发一个加载项,以便有相应的 MySQL 数据库填充 Outlook 数据。有关详细信息,请参阅 Walkthrough: Create your first VSTO Add-in for Outlook

您需要处理两个核心事件来处理传入和传出电子邮件:

  • NewMailEx 事件在新邮件到达收件箱时且在客户端规则处理发生之前触发。您可以使用 EntryIDCollection 数组中返回的条目 ID 来调用 NameSpace.GetItemFromID 方法并处理该项目。
  • 只要用户通过 Inspector 发送 Microsoft Outlook 项目,就会触发 ItemSend 事件(在检查器关闭之前,但在用户单击 Send 按钮)或在程序中使用 Outlook 项目的 Send 方法时,例如 MailItem

您可以使用 visual studio 创建 VSTO 加载项,代码如下所示

     Outlook.Application application;
    private void ThisAddIn_Startup(object sender, System.EventArgs e)
    {
        application = this.Application;
        application.NewMailEx += Application_NewMailEx;
        application.ItemSend += Application_ItemSend;            
    }

    private void Application_ItemSend(object Item, ref bool Cancel)
    {
       if(Item is Outlook.MailItem)
        {
            //extract all property and save
        }
    }

    private void Application_NewMailEx(string EntryIDCollection)
    {
       var item= application.Session.GetItemFromID(EntryIDCollection);
        if(item is Outlook.MailItem)
        {
            // extract mailitem property and save to database
        }
    }

如果你想开发付费版,可以在Upwork联系我。 https://www.upwork.com/freelancers/~01b266b20bfa60411d

如需免费帮助,post 请在此处发表评论 :)