C#获取具有一年以上附件的电子邮件

时间:2019-04-02 22:44:43

标签: c# .net outlook

现在我将c#与.net3.5一起使用。 我尝试用这段代码来获取带有附件的邮件:

private void test(Outlook.Folder folder){
        log.Info(folder.FullFolderPath);
        int i = 0;
        Outlook.Table table = folder.GetTable("@SQL=\"urn:schemas:httpmail:hasattachment\"=1");
        table.Sort("[CreationTime]", false);
        while (!table.EndOfTable)
            {
                Outlook.Row row = table.GetNextRow();
                log.Info(row["CreationTime"] + " " + row["Subject"]);
                i++;
            }
        if(i>0)
          log.Info(folder.FullFolderPath + " --> " + i);
    }

但是直到2018年1月4日(一岁)我才收到电子邮件...如何获取输入文件夹的所有电子邮件,包括2017年(一年以上)的电子邮件? >

谢谢。

1 个答案:

答案 0 :(得分:0)

不幸的是,我没有找到通过“ OUTLOOK INTEROP库”从服务器获取较旧邮件的解决方案。 因此,我发现的唯一解决方案是使用“ Microsoft.Exchange.WebServices库”,但使用此解决方案,我需要向用户询问凭据:((使用OUTLOOK INTEROP库则没有必要)。我可以避免使用Microsoft.Exchange询问凭据.WebServices,但是我需要一个appName和appPassword(并且我无法配置Exchange服务器)。