Custom outlook plug in not downloading as expected

↘锁芯ラ 提交于 2019-12-11 18:05:14

问题


I have written a custom code such that when ever an email arrives which has an attachment,it must get downloaded into a shared location, and email arrives daily.

When I open my laptop daily it's working fine if i don't open and if there are continuous mails (with attachments) and it is not getting downloaded for example, when i open my laptop on monday I have 3 mails with attachment (from satu, sunday, monday).

It is not downloading the latest report from monday it is still showing me same report on saturday.

Here is my code..

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);
}
private void items_ItemAdd(object Item) {
    Outlook.Items inboxitems;
    const string destinationDirectory=@"\\Service Now\";
    Outlook.MailItem newEmail=null;
    inboxitems=inbox.Items.Restrict("[Unread] = true");
    try {
        foreach (object collectionItem in inboxitems) {
            newEmail=collectionItem as Outlook.MailItem;
            if (newEmail !=null) {
                if (newEmail.Attachments.Count > 0) {
                    for (int i=1; i <= newEmail.Attachments.Count; i++) {
                        if (newEmail.Attachments[i].FileName.Contains("Logic")) {
                            //   String Des= destinationDirectory.Remove(0, 1);
                            newEmail.Attachments[i].SaveAsFile(destinationDirectory + newEmail.Attachments[i].FileName);
                            //  MessageBox.Show("Hurry");
                        }
                    }
                }
            }
        }
    }catch (System.Exception ex) {
        MessageBox.Show(""+ex);
    }
}

回答1:


Did you try to debug the code?

I see the following conditions in the code:

inboxitems= inbox.Items.Restrict("[Unread] = true");

and

if (newEmail.Attachments[i].FileName.Contains( "Logic"))

Make sure that emails corresponds to the conditions shown above.

Be aware, the ItemAdd event of the Items class is not fired when a large number of items are added to the folder at once (more than 16).

P.S. Try to check out the MarkForDownload property of Outlook items - an OlRemoteStatus value that determines the status of an item once it is received by a remote user.



来源:https://stackoverflow.com/questions/28943865/custom-outlook-plug-in-not-downloading-as-expected

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!