处理Outlook中的多个日历

时间:2011-09-09 08:12:41

标签: c#

我想提取Outlook中所有日历中的所有项目。我已经使用了我的默认日历,但由于某些未知的原因,我无法获得其他日历项目。以下是我到目前为止所做的事情:

                Microsoft.Office.Interop.Outlook.Application oApp = null;
                Microsoft.Office.Interop.Outlook.NameSpace mapiNamespace = null;
                Microsoft.Office.Interop.Outlook.MAPIFolder CalendarFolder = null;
                Microsoft.Office.Interop.Outlook.Items outlookCalendarItems = null;

                oApp = new Microsoft.Office.Interop.Outlook.Application();
                mapiNamespace = oApp.GetNamespace("MAPI"); ;
                CalendarFolder = mapiNamespace.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderCalendar); outlookCalendarItems = CalendarFolder.Items;
                outlookCalendarItems.IncludeRecurrences = true;

来自.NET: Get all Outlook calendar items。在这种情况下,CalendarFolder.Folders是空的,有什么帮助吗?我需要一个迭代所有日历的函数,对于åuser(不知道日历的名称)。

由于

1 个答案:

答案 0 :(得分:0)

试试这个:

Application outlook = new Application();
MAPIFolder calendars = (MAPIFolder)outlook.ActiveExplorer().Session.GetDefaultFolder(OlDefaultFolders.olFolderCalendar);
            for (int i = 1; i <= calendars.Folders.Count; i++)