用于Outlook的c#VSTO插件,当邮箱处于仅标头模式时,它将下载新邮件

时间:2018-04-12 21:24:56

标签: c# outlook vsto

我有一个只能在Outlook的标题模式下运行的邮箱。标题模式很糟糕,使用日常。我想要做的是将Outlook设置为整个邮箱的仅标题模式,但是会自动为所有新到达的邮件下载完整项目。

我从MS网站上获取了一些代码,但是我找不到mailitem对象上的方法:“立即下载此消息的其余部分”以获取该新邮件项目。以下是我到目前为止所拥有的内容。我认为最简单的方法是检查下载状态属性(https://msdn.microsoft.com/en-us/VBA/Outlook-VBA/articles/mailitem-downloadstate-property-outlook)是否未下载,然后“立即下载此消息的其余部分”。

所有这一切都会发生在新的邮件项目事件中。我不是程序员。我什么都不知道。任何建议都非常感谢。

public partial class ThisAddIn   {
    Outlook.NameSpace outlookNameSpace;
    Outlook.MAPIFolder inbox;
    Outlook.Items items;

    private void ThisAddIn_Startup(object sender, System.EventArgs e)
    {
        outlookNameSpace = this.Application.GetNamespace("MAPI");
        inbox = outlookNameSpace.GetDefaultFolder(
                Microsoft.Office.Interop.Outlook.
                OlDefaultFolders.olFolderInbox);

        items = inbox.Items;
        items.ItemAdd +=
            new Outlook.ItemsEvents_ItemAddEventHandler(items_ItemAdd);
    }

    void items_ItemAdd(object Item)
    {
        //CHECK IF MAIL IS HEADER-ONLY. IF IT IS, DOWNLOAD FULL ITEM.


        }

    #region VSTO generated code

    /// <summary>
    /// Required method for Designer support - do not modify
    /// the contents of this method with the code editor.
    /// </summary>
    private void InternalStartup()
    {
        this.Startup += new System.EventHandler(ThisAddIn_Startup);
        this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
    }

    #endregion
}

1 个答案:

答案 0 :(得分:0)

使用Outlook对象模型触摸时,将按需下载该消息。